第5章 DM642的外部存储器EMIFA接口讲解

合集下载

TMS320DM642中文资料

TMS320DM642中文资料

TMS320DM642中文资料1.2 概述TMS320C64x DSP芯片(包括TMS320DM642)是在TMS320C6000 DSP平台上的高性能定点DSP。

TMS320DM642(DM642)是基于有TI开发的第二代高性能,先进VelociTI技术的VLIW结构(VelociTI1.2),从而使得这些DSP芯片成为数字多媒体的极好的选择。

DM642在主频720MHz下处理速度达到5760MIPS,并且给高性能DSP规划提供了廉价的解决方案。

DM642操作灵活的高速处理器和用数字表达容量的阵列处理器。

C64x DSP核具有64个32位字长的通用寄存器和8个独立的功能单元——两个结果为32位的乘法器和6个ALUs——是VelociTI1.2的升级版。

VelociTI1.2升级版在8个功能单元里包括新的指令,可以在视频和图像应用方面提高性能,并能对VelociTI结构进行扩充。

DM642每周期能够提供4个16位MACs,每秒可提供2880百万个MACs,或者8个8位MACs,每秒5760MMACs。

DM642具有特殊应用的硬件结构,片上存储器和与其它的C6000系列DSP平台相似的额外的片上外围设备。

DM642使用两级缓存,有一个强大的多变的外围设置。

一级程序缓存L1P是一个128Kbit的直接映射缓存,另一级数据缓存L1D是一个128Kbit双路结合设置缓存。

L2存储器能被配置成映射存储器,高速缓存或者两者结合。

外围设置包括:3个可配置的视频端口;1个10/100Mb/s的以太网控制器(EMAC);1个管理数据输入输出(MDIO);1个内插VCXO控制接口;1个McASP0;1个I2C总线;2个McBSPs;3个32位通用定时器;1个用户配置的16位或32位主机接口(HPI16/HPI32);1个PCI;1个16引脚的通用输入输出口(GP0),具有可编程中断/事件产生模式;1个64位IMIFA,可以与同步和异步存储器和外围设备相连。

emif接口原理

emif接口原理

emif接口原理EMIF(外部存储器接口)是一种用于连接处理器和外部存储器的接口技术。

它允许处理器通过总线与外部存储器进行数据交换,实现数据的读取和写入操作。

在现代计算机系统中,EMIF接口被广泛应用于各种设备,如微处理器、嵌入式系统、通信设备等。

本文将介绍EMIF接口的原理和工作机制。

EMIF接口的原理基于总线通信技术,它通过一组信号线实现了处理器与外部存储器之间的数据传输。

在EMIF接口中,有两个重要的信号线:地址线和数据线。

地址线用于传输处理器发送的存储器地址,而数据线则用于传输存储器中的数据。

此外,还有一些控制信号线,用于控制数据传输的开始和结束。

EMIF接口的工作机制可以简单描述为以下几个步骤:1. 处理器发送地址:当处理器需要从外部存储器中读取数据时,首先会将读取操作的地址发送到EMIF接口。

地址线的数量取决于外部存储器的容量,通常可以支持数百万个地址。

2. 存储器响应:当EMIF接口接收到地址后,会将该地址发送到外部存储器。

外部存储器根据地址找到相应的数据,并将其发送回EMIF接口。

3. 数据传输:EMIF接口接收到外部存储器发送的数据后,会将其传输到处理器。

数据线的宽度决定了每次传输的数据量,通常有8位、16位或32位等不同宽度。

4. 控制信号:在数据传输过程中,EMIF接口还使用控制信号线来控制数据传输的开始和结束。

例如,读取操作时,EMIF接口会发送一个读取信号给外部存储器,以指示开始读取数据。

通过以上步骤,EMIF接口实现了处理器和外部存储器之间的数据交换。

这种接口技术使得处理器可以方便地读取和写入外部存储器中的数据,扩展了计算机系统的存储能力。

除了基本的读写操作,EMIF接口还支持其他功能,如时序控制和中断处理。

时序控制用于确保数据的稳定传输,避免数据冲突和错误。

中断处理则可以提高系统的响应能力,当外部存储器中的数据发生变化时,EMIF接口可以及时通知处理器进行相应的操作。

外部存储器接口

外部存储器接口
FLASH映射到CE1存储空间,地 址范围0x9000 0000~0x9FFF
FFFF。选择16位数据总线时,
Flash的BYTE输入端被固定为高 电平。在这个例子中,Flash的 RY/BY端口的输出信号没有被用 来决定Flash的状态,而是假定 采用轮询法对Flash编程和擦除。
第38页,共40页,编辑于2022年,星期日
Hold≥(th-toh(f))/E=(1-0)/10=0.1
一般Setup可取1,这样由第1个条件便可以得出Strobe的值为10;再 由第2和第3个条件得到Hold的值为1。
第28页,共40页,编辑于2022年,星期日
FLASH 的写时序
第29页,共40页,编辑于2022年,星期日
FLASH 的写时序
第11页,共40页,编辑于2022年,星期日
6.2 SDRAM接口设计
SRAM是Static Random Access Memory的缩写,中文含义为静态随机访问存 储器,它是一种类型的半导体存储器。“静态”是指只要不掉电,存储在SRAM 中的数据就不会丢失。这一点与DRAM不同,DRAM需要进行周期性的刷新操
FLASH 读写程序流程
EMIF接口初始化 擦除FLASH
把数据写入FLASH
读出数据判断是否正确
输出结果
第39页,共40页,编辑于2022年,星期日
第40页,共40页,编辑于2022年,星期日
于内部编程操作时,读DQ7会返回’0’,
读DQ6的返回值在’0’和’1’之间切换 ;当内部编程操作完成后,读DQ7就会 返回’1’,DQ6停止切换。因此需要在 编程操作的程序中插入2次读操作,如果 2次读的结果都是有效数据,才说明器 件完成了编程操作。

第5章 DM642的外部存储器EMIFA接口讲解

第5章 DM642的外部存储器EMIFA接口讲解
第5章 DM642的外部存储器 EMIFA接口
TDS642EVM 开发板地址空间影射
EMIFA接口
TMS32ODM642的数据空间划分为4个存储空间CE0CE3,每个存储空间的大小为256MB,这4个空间的地 址分配如下。
FLASH
存储器 接口
UART接口
FPGA 异步存 储器接 口
FPGA 同步存 储器接 口
AECLKOUT1和AECLKOUT2是时钟输出引脚,为外部存 储器提供同步时钟,AECLKOUT1和AECLKOUT2引脚输出 的时钟频率有所不同, AECLKOUT1 输出的时钟频率等于时 钟源的频率,AECL KOUT2引脚输出的时钟频率可编程,可 为时钟源频率的1分频、2分频或4分频。 GBLCTL寄存器的 第18-19位决定。
5.3 EMIFA寄存器:CESECx
CE空间次级控制寄存器包括4个寄存器CESECO、 CESECI、CESECZ和CESEC3。 SNCCLKx(CESECx[6])是EMIFA接口同步时钟选 择控制位,SNCCLKx位的取位代表的含义如下:
5.3 EMIFA寄存器:CESECx
5.4 EMIFA寄存器:SDCTL
空间管理引脚
3.外设数据传输控制引脚 (输出/高阻) 该引脚信号允许DM642和外设直接交换数
据。
EMIFA存储器控制引脚
信号分别用于异步存储器、SDRAM和同 步可编程存储器的写使能
EMIFA存储器控制引脚
EMIFA存储器控制引脚
EMIFA存储器控制引脚
第一脚为外部存储器提供时钟信号、读写控制信号、输出 使能控制信号等。EMIFA同步时钟源包括3种:AECLKIN引 脚时钟信号、主频时钟1/4和主频时钟1/6。 EMIFA 时钟游 由AEA[20,19]引脚的状态决定。AECLKIN是时钟输入引 脚,最高输入时钟频率133MHz;

DM642_PCI编程驱动说明

DM642_PCI编程驱动说明

DM642 PCI 驱动说明名词说明DM642 :TI 公司提供的一款DSP 芯片,包含一个PCI 接口。

HOST CPU/主机:DM642 所连接到的一颗CPU 芯片,如Intel 的P4 CPU。

PCI 驱动:DM642 的PCI 驱动程序由2 部分组成,一部分工作在HOST CPU 上,不妨称为上位机驱动,另一部分工作在DM642 上,不妨称为下位机驱动。

DMA 传输:这里专指使用DM642 的PCI DMA 控制器所完成的在HOST CPU 主存空间和DM642 的存储空间二者之间的数据传输活动,该活动无须占用HOST CPU 和DM642。

问题分析实现DM642 PCI 驱动程序的难点在于实现DM642 与HOST CPU 的双向DMA 传输。

DM642 的PCI 接口实现存在如下限制:1. 不能直接支持Scatter List DMA。

2. PCI DMA 完成中断的中断对象是DSP,而不是HOST CPU。

由于上述2点限制,如果没有DSP 端程序的配合,是不可能实现有实际应用意义的DMA 的。

实现思路1.上位机驱动将上位机的内核缓冲区映射为PCI 总线地址,然后将映射结果(称为"Scatter List")写入DM642 的本地内存。

2.由上位机应用程序通知下位机驱动需要传输的字节数。

3.下位机驱动根据Scatter List ,启动一次或者多次DMA 来完成数据传输。

最后中断HOSTCPU ,告知传输完成。

4.cache 问题处理. HOST CPU,DM642,C6416 都有cache ,如果DMA 的目的缓冲区或者源缓冲区落在DRAM 空间,程序必须小心处理cache 所引发的一致性问题。

在HOST CPU 可以把DMA 缓冲区直接设置为不可cache 的区域;在DM642/C6416 上需要在DMA 传输前后对缓冲区执行invalidate/writeback 操作。

DM642EMDA

DM642EMDA

DM642中EDMA结构及优化DMA(Direct Memory Access)是DSP中至关重要的一个部分,DMA可以在不需要CPU的干预的情况下,在后台执行数据的高速传输,系统效率的高低很大程度上取决与DMA的使用好坏与否。

DM642是目前公司内使用最多的DSP,其运行效率的高低决定着大部分产品的性能。

下面就DM642上的DMA性能做一个简单的介绍和分析。

DM642中的DMA称为EDMA(Enhanced Direct Memory Access),其EDMA控制器支持64个相互独立的DMA通道,每个通道都可以接受系统外设事件的触发或者CPU的指令的触发,不同DMA传输之间还可以进行连接,构成各种复杂的DMA操作,在600MHz主频时可以提供2.4GB/秒的数据吞吐量。

具备的1维、2维传输模式,非常适合图像的处理。

要想用好EDMA,需要很好的理解EDMA的传输过程。

EDMA内部划分为4个优先级,分别是Q0(Urgent)、Q1(High)、Q2(Medium)和Q3(Low),顾名思义,从0-3由高至低,4个优先级分别对应4个队列,每个队列可容纳16个传输请求,每个队列都可以被CPU和外设使用,且每个部分占用的队列单元个数可以手动设置。

每个队列都是FIFO结构,先提交的传输先执行传输操作,队列后面的操作必须等待前面的操作完成后才能够被执行,但是各个队列之间的传输可以按照优先级并行操作,当某个操作处于阻塞、等待状态时,其它队列中的任务可以得到执行。

从这个基本操作模式可以看出合理的对EDMA资源进行分配很重要,目前DM642系统中的处理如下:1、高优先级的队列中执行传输数据少但时间要求最紧迫的任务,比如CACHE操作和CPU访问操作,因为这类操作如果得不到快速的响应,会造成CPU的阻塞,严重影响CPU的性能。

2、低优先级队列中执行紧迫性不高且数据量大的传输。

比如编解码的传输,预览、缩放的传输。

因为数据量的传输会很长时间的占用DMA操作和外部总线操作,如果将其放在高优先级队列中,会使那些数据量本来很少的操作因为优先级低而长时间得不到响应,造成浪费。

DM642视频接口的多处理器扩展

DM642视频接口的多处理器扩展

2006年10月October 2006—224— 计 算 机 工 程Computer Engineering 第 第19期Vol 32卷.32 № 19 ·多媒体技术及应用·文章编号:1000—3428(2006)19—0224—03文献标识码:A中图分类号:TP37DM642视频接口的多处理器扩展蒋 伟,胡剑凌(上海交通大学电子工程系,上海 200030)摘 要:在图像处理中单片DSP 往往无法满足实时性要求,而需要多DSP 进行协同工作。

该文针对图像信号的特点以及DM642视频接口原理,设计了多DM642处理系统中视频接口的有效扩展。

设计中利用FPGA 进行数字视频信号的预处理,并根据具体的系统实现了视频数据的分流,同时提供了DM642视频接口的无缝连接。

该设计大大提高了DSP 系统的数据吞吐能力及并行处理能力,有效地解决了DSP 在高数据带宽应用中的瓶颈。

关键词:DM642;视频接口;多处理器;FPGAMultiprocessor Expansion of DM642 Video PortJIANG Wei, HU Jianling(Department of Electronic Engineering, Shanghai Jiaotong University, Shanghai 200030)【Abstract 】During image processing, a single DSP sometimes couldn’t meet the need of real-time, thus it is needed to use multiple DSPs to cooperation. According to the features of image signal and the principle of DM642 video port, the paper provides an available video port expansion based on multiprocessor. In the design, FPGA is used as preprocessing of digital video signal and realizes the flow-distribution of video data. In the mean time, FPGA provides the seamless connection with DM642 video port. The design greatly improves the DSP system’s throughput and concurrent processing abilities. It effectively solves the bottleneck during high-bandwidth application using DSP. 【Key words 】DM642; Video port; Multiprocessor; FPGADM642是TI 公司最新推出的一款针对多媒体领域应用的DSP ,它以TI 的性能最高的定点DSP 系列C64x 作为处理核心,增加了很多外围设备和接口。

CME-M5 外部存储器接口(EMIF)总线使用指南

CME-M5 外部存储器接口(EMIF)总线使用指南

CME-M5 外部存储器接口(EMIF)总线使用指南一、EMIF 总线概述外部存储器总线(EMIF, External Memory Interface)总线是京微雅格(CME) 的8051 硬核与FPGA 之间的并行8 位总线接口,主要的信号有6 个,分别为:memaddr[22:0]:23 位地址总线,对应8M 地址空间; memdatao[7:0]:8 位数据输出总线; memdatai[7:0]:8 位数据输入总线; memrd:总线读信号; memwr:总线写信号; memack:总线应答信号;与EMIF 操作时序有关的8051 的内部寄存器为CKCON 寄存器,一般8051 的初始化程序需要在主函数的初始化更改该寄存器的初始化值,以实现最快的总线访问效率。

1. EMIF 总线相关的MCU 寄存器:CKCONCKCON 主要作用是设置存储器地址总线memaddr[22:0]和读写memwr/ memerd 信号的宽度,已实现对不同外设时序的操作,若宽度仍不够,也可以通过memack 实现硬件延时,理论上可以实现任意宽度的地址总线地址和读写信号。

CKCON 寄存器的默认值为:0x71通过设置CKCON 的第4-6 位,可以改变CPU 的运行效率,最小值是001,不可设置为000;当设置为111,运行的效率最慢;所以推荐客户在CPU 开始运行就改变4-6 位的值为001,以使CPU 运行的效率最快。

通过设置CKCON 的第0-2 位,可以改变EMIF 总线的memrd,memwr,memaddr 的宽度,最小值是000,对应memrd,memwr,memaddr 的宽度为1 个时钟周期;当设置为111 时,对应memrd,memwr,memaddr 的宽度为8 个时钟周期;所以推荐客户在CPU 开始运行就改变4-6 位的值为000,以使。

微机原理与接口技术第五章――存储器.

微机原理与接口技术第五章――存储器.

微机原理与接口技术(2006-2007学年主讲:何浩Email: hehao@第五章存储器存储器概述¾存储器是计算机系统中用来存储信息的部件,它是计算机中的重要硬件资源。

¾从存储程序式的冯.诺依曼经典结构而言,没有存储器,就无法构成现代计算机。

按用途分类内存储器:分为高速缓冲存储器(Cache和主存储器(内存条两种¾Cache一般为几百KB,工作速度几乎与CPU相当。

¾内存条容量相对较大,目前一般在128MB到512MB之间,但速度较Cache慢。

外存储器:主要是磁介质存储器,容量大,目前一般在10GB以上。

用来存放相对来说不经常使用的程序或者数据或者需要长期保存的信息。

此外还有光盘等其他介质的存储器。

CPU CACHE主存(内存辅存(外存半导体存储器的分类按使用功能¾RAM(Random Access Memory¾ROM(Read Only MemoryRAM的种类¾SRAM(静态:速度快、集成度低、功耗大¾DRAM(动态:速度慢、集成度高、功耗低、需要周期性刷新 ROM的种类¾可编程ROM:数据固化到ROM后不可更改。

¾可擦除、可编程ROM:可以通过特殊装置进行改写,平时使用过程中只作为可读存储器¾电可擦除、可编程ROM:可以通过特殊装置进行改写,平时使用过程中只作为可读存储器随机存取存储器RAMCPU能根据RAM的地址将数据随机地写入或读出。

电源切断后,所存数据全部丢失。

¾SRAM静态RAM(Static RAM:静态RAM速度非常快,只要电源存在内容就不会自动消失。

¾DRAM动态RAM(Dynamic RAM:DRAM存在泄漏电流,因此必须周期性的在内容消失之前进行刷新(Refresh。

¾考虑因素:功耗,速度,容量/价格,电路的复杂性SRAM存储器的构成最基本存储单元:6个MOS管构成的双稳态触发器电路存储体:许多基本存储单元构成的矩阵¾存储矩阵字结构排列位结构排列¾地址译码器片选信号(高位地址生成线性译码或复合译码¾控制逻辑片选、读允许、写允许¾三态控制为什么需要?DRAM存储器的构成最基本存储单元:4管、3管或单管结构需要配置刷新逻辑电路¾原因:利用电容存储电荷¾刷新:刷新周期、集中刷新、分布刷新DRAM控制器¾地址多路器行地址、列地址CPU的地址分两次发送到DRAM芯片¾刷新定时器根据时间要求进行定时¾刷新地址计数器¾仲裁电路来自CPU的访问请求和刷新请求同时产生时进行优先级裁定¾定时发生器静态存储器的工作时序很多参量,关注你需要的参量即可动态存储器的工作时序常见RAM厂家静态存储器:ISSI动态存储器:SumSung、Hynix、Micron FIFO:IDT高速缓冲存储器CACHE技术是为了把主存储器看成是高速存储器而设置的小容量局部存储器。

TMS320DM642的外部存储器接口引导

TMS320DM642的外部存储器接口引导

导方 式 。众 多 的 引 导 方 式 使 得 在 D P的 设 计 与 工 S
程应用 中 , 于引 导 的问题 经 常成 为一 个难 点 。 关 处理器 ( gtl daP o es r 是 德 州 仪 器 公 司 Dii a Me i rc so ) ( I推 出 的 基 于 C 4 T) 6 x核 心 的 TMS 6 0 C 0 0平 台 3 2
C 0 0系列 D P中 , 同核 心 的 D P拥 有不 同的引 60 S 不 S
I DS P的 EMI F引导 过 程
DM6 2提供 多 种 引导 模 式 以 适 配 不 同 的 系 统 4 设 备 , DM6 2并 没有 单独 提供 设 置引 导模 式 的输 但 4
入 引脚 , 是共 用 E F的地址 引脚 E 2和 E 1 而 MI A2 A2
TMS 2 DM6 2 以下 简 称 D 4 )数 字 媒 体 进行 设 置 。 当 D 4 30 4( M6 2 M6 2复 位 后 对 这 两 个 引 脚 电 平 采
样, 然后 根 据 不 同 的组 合 进 入 到 对 应 的 引 导 模 式 。 表 1列 出 了 E 2和 EA2 A2 1的引脚 不 同状 态 的组 合 以及 对应 的引导模 式 。
关 键词 : 引导设计; S ;MS2D 4 ;MI; S / I S D P T 30 M62E F D P BO 中图分 类 号 :P 7 文献 标 志码 : T 24 A 文章编 号 :0819 (08 s-os 3 10—1420 )o o一 o 0
St dy 0 u fEM I Bo t f r TM ¥ 2 F o o 3 0DM 6 2 4
PAN iyu n, Ru — a ZH ANG Ke

单片机的外部存储器接口技术原理与应用指南

单片机的外部存储器接口技术原理与应用指南

单片机的外部存储器接口技术原理与应用指南简介:单片机是一种在嵌入式系统中广泛使用的微处理器芯片,它能够完成各种任务,从简单的控制任务到复杂的数据处理任务。

然而,由于单片机的内部存储能力有限,常常需要与外部存储器进行交互,以满足更大容量和持久存储的需求。

本文将介绍单片机的外部存储器接口技术的原理和应用指南,包括存储器的选择、接口电路设计以及数据读写操作等方面的内容,旨在帮助读者了解和应用单片机外部存储器接口技术。

一、外部存储器的选择在选择外部存储器时,需要考虑容量、速度、功耗和成本等因素。

常见的外部存储器包括EEPROM、SRAM、SDRAM和Flash等。

EEPROM适用于存储程序代码、配置数据和校准数据等不经常更新的内容;SRAM适用于高速读写操作,但容量较小;SDRAM和Flash适用于容量较大的数据存储。

二、接口电路设计单片机和外部存储器之间的通信通常通过总线实现,其中包括地址总线、数据总线和控制总线。

接口电路必须能够解码单片机的地址和控制信号,以及将数据传输到存储器或从存储器中读取数据。

常见的接口电路包括地址译码器、锁存器和数据缓冲器等。

1. 地址译码器地址译码器用于将单片机的地址信号转换为外部存储器的选择信号。

根据存储器的大小和类型,可以使用不同的译码器来满足需求。

常见的译码器包括74HC138和74HC139等。

2. 锁存器锁存器用于暂存单片机的输出数据,以便在存储器写入操作时保持数据的稳定性。

常见的锁存器包括D触发器和SR锁存器等。

3. 数据缓冲器数据缓冲器用于放大和缓冲单片机的数据信号,以便与外部存储器进行数据传输。

常见的数据缓冲器包括74HC245和74HC541等。

三、数据读写操作数据读写操作是单片机与外部存储器交互的核心部分。

根据存储器的类型和连接方式,数据读写操作可以有不同的实现方式。

1. EEPROM对于EEPROM,数据读写操作是通过向存储器发送地址和数据来完成的。

读操作时,单片机发送要读取的地址,并接收存储器返回的数据;写操作时,单片机发送要写入的地址和数据。

TMS320DM642的外部存储器接口引导

TMS320DM642的外部存储器接口引导

TMS320DM642的外部存储器接口引导
潘睿元;张科
【期刊名称】《探测与控制学报》
【年(卷),期】2008(030)0z1
【摘要】详细介绍了TMS320DM642 DSP芯片引导的特点和EMIF引导的过程,设计了8位EMIF引导电路.最后,给出二次引导的部分程序代码.实践证明,该电路和方法在利用TMS320DM642 DSP芯片设计系统时非常简便,具有很大的实用性.【总页数】3页(P5-7)
【作者】潘睿元;张科
【作者单位】西北工业大学航天学院,陕西,西安,710072;西北工业大学航天学院,陕西,西安,710072
【正文语种】中文
【中图分类】TP274
【相关文献】
1.TMS320DM642的外部存储器接口引导 [J], 潘睿元;张科
2.Stratix Ⅱ器件的外部存储器接口选择 [J], Paul;Evans
3.基于VMM的外部存储器接口验证 [J], 刘兆勇;王进祥;李清波
4.YHFT-DSP外部同步存储器接口时序设计优化 [J], 黄彩霞;马剑武
5.一种外部存储器接口总线测试方法 [J], 李丹
因版权原因,仅展示原文概要,查看原文内容请购买。

DM642外部中断的实现总结

DM642外部中断的实现总结

DM642外部中断的实现总结-)在含有操作系统DSP/BIOS的程序中实现外部中断比较简单,只需要进行如下操作:(1) 在源程序文件中,假设为main.c,在其中添加一个中断处理函数,若要使用外部中断4,可添加函数,这里不需要在前面加入interrupt关键字void int_isp4(){//添加中断处理代码}(2)打开DSP/BIOS配置文件xxx.cdb,选择“Scheduling”下的“HWI - Hardware Interrupt Service Routine Manager”项,即HWI模块,它管理着DSP/BIOS中的硬件中断向量表,提供基本的中断控制函数(如图1所示),列出了DM642的所有中断向量表,其中HWI_INT4, HWI_INT5, HWI_INT6, HWI_INT7是外部中断,这里选择HWI_INT4,在其选项上点击右键,选择”Propert i es”,弹出如图2所示:图1图2在function中输入在程序文件中定义的中断处理函数,如第一步所定义的int_isp4,注意在这里记得在其函数名前面加上下划线。

由此即可完成对外部中断的配置。

(二)在非DSP/BIOS中使用CSL API进行设置相对来说比较复杂一些,主要进行如下操作:(1)定义描述DM642中断的向量表文件,这里使用TI公司提供的一个中断向量表文件模板:ves_dm642.asm,内容如下:* Copyright (C) 2003 Texas Instruments Incorporated* All Rights Reserved*---------vecs_edma1.asm---------* Assembly file to set up interrupt service table (IST)*------------------------------------------------------------------------------* Global symbols defined here and exported out of this file*------------------------------------------------------------------------------.global _vectors.global _c_int00.global _vector1.global _vector2.global _vector3.global _ int_isp4.global _vector5.global _vector6.global _vector7.global _ vector8.global _vector9.global _vector10.global _vector11.global _vector12.global _vector13.global _vector14.global _vector15*------------------------------------------------------------------------------* Global symbols referenced in this file but defined somewhere else.* Remember that your interrupt service routines need to be referenced here.*------------------------------------------------------------------------------.ref _c_int00*------------------------------------------------------------------------------* This is a macro that instantiates one entry in the interrupt service table.*------------------------------------------------------------------------------VEC_ENTRY .macro addrSTW B0,*--B15MVKL addr,B0MVKH addr,B0B B0LDW *B15++,B0NOP 2NOPNOP.endm*------------------------------------------------------------------------------* This is a dummy interrupt service routine used to initialize the IST.*------------------------------------------------------------------------------_vec_dummy:B B3NOP 5*------------------------------------------------------------------------------* This is the actual interrupt service table (IST). It is properly aligned and* is located in the subsection .text:vecs. This means if you don't explicitly* specify this section in your linker command file, it will default and link* into the .text section. Remember to set the ISTP register to point to this* table.*------------------------------------------------------------------------------.sect ".text:vecs".align 1024_vectors:_vector0: VEC_ENTRY _c_int00 ;RESET_vector1: VEC_ENTRY _vec_dummy ;NMI_vector2: VEC_ENTRY _vec_dummy ;RSVD_vector3: VEC_ENTRY _vec_dummy_vector4: VEC_ENTRY _ int_isp4_vector5: VEC_ENTRY _ vec_dummy_vector6: VEC_ENTRY _vec_dummy_vector7: VEC_ENTRY _vec_dummy_vector8: VEC_ENTRY _HWIEdma_vector9: VEC_ENTRY _vec_dummy_vector10: VEC_ENTRY _vec_dummy_vector11: VEC_ENTRY _vec_dummy_vector12: VEC_ENTRY _vec_dummy_vector13: VEC_ENTRY _vec_dummy_vector14: VEC_ENTRY _vec_dummy_vector15: VEC_ENTRY _vec_dummy*------------------------------------------------------------------------------(2)在源程序文件main.c中添加外部中断处理函数定义,假设还是使用外部中断4,则在程序中如下定义:interrupt void int_isp4(){//中断处理代码}注意这里要在函数定义前面添加interrupt关键字,同时将函数名添加进中断向量表文件的对应位置,如上面程序所示,这里需要在其前面添加下划线(汇编程序调用C语言函数需要在函数加上下划线)。

DM642_音频视频接口

DM642_音频视频接口

音频视频接口:视频端口0、1(VP1、VP0)用作输入端口,命名为:捕获输入端口。

这些端口连接到4块TVP5150解码器,通过I2C总线连接,支持NTSC,PAL,SECAM 等。

视频端口2(VP2):用作输出端口,用来驱动视频编码器。

连接SAA7105编码器,这个编码器可以进行RGB,HD合成视频。

其中:McBSP1与McBSP0和视频端口1、0复用。

视频通道复用的外围设备VP0 (低位)McBSP0VP0 (高位)McASP ContorlVP1 (低位)McBSP1VP1 (高位)McASP DataVP2 无混用VP2引脚为:数据线VP2D[19-0](IO),控制引脚VP2CTL[2-0](IO),VP2CLK[1-0](I),STCLK(I)。

其中:STCLK为三个视频端口公用。

VP0和VP1引脚同VP2. 使用AIC23立体声语音编解码器和SPDIF输出连接McASP。

I2C接口:●SCL 引脚:57●SDA 引脚:59定时器0和定时器1:Timer0:●TOUT0/MACEN(IO)●TINP0(I)Timer1同定时器0。

定时器2无输入输出EMIF:存储器接口(DC_P3):所有信号都经过缓冲器,不直接与DM642相连,最大4MB,易用2MB,可用2MB●地址线EA[22:3]●数据线ED[31:0]●CE2和CE3使能位●BE0~BE3 使能位0~3●ECLKOUT2 输出时钟●ARE/SDCAS/SADS/SRE 异步读使能●AOE/SDRAS/SOE 异步输出使能●AWE/ADWE/AWE 异步写使能●ARDY 异步使能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5.2 EMIFA寄存器:CECTLx
5.2 EMIFA寄存器:CECTLx
5.2 EMIFA寄存器:CECTLx
*(int *)EMIFA_CE0 = 0xffffffd3; /* CE0 SDRAM *(int *)EMIFA_CE1 = 0x73a28e01; /* CE1 Flash + CPLD *(int *)EMIFA_CE2 = 0x22a28a22;//
DSP地址总线引脚
TMS320DM642 的地址总线引脚(输出/高阻)共20个,片 引脚的地址总线从AEA3开始,关系如下:
EMIFA接口
DM642通过EMIFA接口扩展外部存储器时.使用CE0CE3信号作为空间片选信号。可以把外扩的存储器映射 在不同空间中,空间片选信号低电平有效。 EMIFA数据总线宽度为64位。 同时,接口的数据宽度 也支持8位、16位和32位的数据。
EMIFA存储器控制引脚
AEA[20:19]引脚的电平状态用于设置EMIFA接口的同步时 钟的来源,它们对应AECLKIN_SEL[1:0]字段。 AEA[20:19]逻辑组合的含义如下:
DSP启动控制引脚
在DM642上电复位阶段,AEA[22: 21]引脚的电平状态还 用于设置DM642的启动方式,这些引脚应接上拉或下拉 电阻。 AEA[22: 21] 辑组合的含义如:
空间管理引脚
3.外设数据传输控制引脚 (输出/高阻) 该引脚信号允许DM642和外设直接交换数
据。
EMIFA存储器控制引脚
信号分别用于异步存储器、SDRAM和同 步可编程存储器的写使能
EMIFA存储器控制引脚
EMIFA存储器控制引脚
EMIFA存储器控制引脚
第一脚为外部存储器提供时钟信号、读写控制信号、输出 使能控制信号等。EMIFA同步时钟源包括3种:AECLKIN引 脚时钟信号、主频时钟1/4和主频时钟1/6。 EMIFA 时钟游 由AEA[20,19]引脚的状态决定。AECLKIN是时钟输入引 脚,最高输入时钟频率133MHz;
4.1 EMIFA寄存器: GBLCTL
全局控制寄存器:GBLCTL,是EMFA接口很重 要的一个寄存器,它的长度为32位,包含了 EMIFA接口多个信号引脚的使能控制位,该寄存器 包含的字段如下。
例: *(int *)EMIFA_GCTL = 0x00052078; ; CLK6,4,1使能;将MRMODE 置1; 使能EK2NE, EK2RATE
同步突发静态随机存取存储器
核心CPU
4.异步存储器
FLASH 1M
4.异步存储器
FLASH 2M
5.FIFO存储器
FLASH
EMIFA寄存器
常用的EMIF寄存器如表:
5.1 EMIFA寄存器: GBLCTL
全局控制寄存器:GBLCTL,管理全部CE各段,是 EMFA接口很重要的一个寄存器,它的长度为32位,包含 了EMIFA接口多个信号引脚的使能控制位,该寄存器包含 的字段如下。
5.2 EMIFA寄存器:CECTLx
CE空间控制寄存器CECTL0、CECTL1、CECTL2 和CECTL3也是EMIFA接口很重要的寄存器,这4 个寄存器对CEO、CEI、CEZ和CE3空间进行配置 设置,MYTYPEx (是 CECTLx[7:4] )是空间控制 寄存器cECTLx中很重要的字段,用于设置的数据 宽度和接口类型。该字段取泣代表的含义如下:
EMIFA接口
核心CPU
1.SDRAM存储器的扩展
SDRAM,同步动态随机存取存储器。TMS320DM642外 部存储空间经常使用的一类存储器,该类存储器的数据 存取速度快,容量大。DM642与SDRAM存储器芯片的 连接关系如图
EMIFA接口
核心CPU
2.同步突发静态随机存取存储器
SBSRAM(Synchronous Burst static Random Access Memory,同步突发静态随机存取存储器
空间管理引脚
1. 空间片选引脚(输出/高阻) 这些引脚为:
存储器空间划分为CE3、CE2、CE1和 CE0共 4个资空间,每个子空间的大小 为256MB,
空间管理引脚
2.EMIF低位地址译码和字节使能控制引脚(输 出/高阻)
DM642的地址线从AEA3开始,低位地址单元无 法直接访问,这些引脚信号允当低位地址译码 信号。
EMIFA接口
核心CPU
DSP数据总线引脚
TMS320DM642的数据总线为64位,共64个引脚(三态引脚,输入 /输出/高阻),数据总线与DM642芯片引脚的映射关系如下。
DSP数据总线引脚
EMIFA接口引脚
TMS32ODM642通过EMIFA接口访问外部存 储器空间和I/O空间,外扩的存储器可以是 RAM,也可以是SDRAM、SBSRAM、ZBT SRAM、FIFO和FLASH等。EMlFA接除数据 总线和地址总线外,还包括3种类型的功能引 脚:空间管理引脚、 EMlFA总线状态指示引脚 和EMlFA存储器控制引脚。
5.2 EMIFA寄存器:CECTLx
CE空间控制寄存器CECTL0、CECTL1、CECTL2 和CECTL3也是EMIFA接口很重要的寄存器,这4 个寄存器对CEO、CE1、CE2和CE3空间进行配置 设置,MYTYPEx (是 CECTLx[7:4] )是空间控制 寄存器cECTLx中很重要的字段,用于设置的数据 宽度和接口类型。该字段取泣代表的含义如下:
AECLKOUT1和AECLKOUT2是时钟输出引脚,为外部存 储器提供同步时钟,AECLKOUT1和AECLKOUT2引脚输出 的时钟频率有所不同, AECLKOUT1 输出的时钟频率等于时 钟源的频率,AECL KOUT2引脚输出的时钟频率可编程,可 为时钟源频率的1分频、2分频或4分频。 GBLCTL寄存器的 第18-19位决定。
第5章 DM642的外部存储器 EMIFA接口
TDS642EVM 开发板地址空间影射
EMIFA接口
TMS32ODM642的数据空间划分为4个存储空间CE0CE3,每个存储空间的大小为256MB,这4个空间的地 址分配如下。
FLASH
存储器 接口
UART接口
FPGA 异步存 储器接 口
FPGA 同步存 储器接 口
相关文档
最新文档