0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于TMS320C6455系列DSP的中断系统的使用

ss 作者:工程师谭军 2018-09-07 09:35 次阅读

本文主要是关于TMS320C6455的相关介绍,并着重对TMS320C6455系列DSP的中断系统的使用进行了详尽的阐述。

TMS320C6455

TMS320C6455是TI公司推出的的一款新型高性能单核定点DSP.它是TI公司基于第三代先进VeloviTI VLIW(超长指令字)结构开发出来的新产品,在通信,医疗图像,无线传输方面都可以大有作为.TMS320C6455主频达到了1GHz,1ns的指令周期.每周期执行8条32位指令,最大峰值速度达到8000MIPS.这意味着.在1G时钟频率下,8000个16位“16位的MACs能在1秒钟发生.TMS320C6455还带有Seria/RapidlOfr)总线,互连速率每秒高达25Gbits,实现了极高的多处理性能,降低了系统消耗,比此前的外部存储器接口快12倍,这使得多DSP级连变得十分方便.TMS320CC6455片内是基于C64xx内核的L1/L2存储结构.片上集成有大量的存储空间.L1P为32K字节,L1D为32K字节 L2为2M字节、比此前C64x器的存储器容量件翻一番,其中L1P和L2都可直接映射到存储空间。

TMS320C6455的外围总线包括:一个内部集成电路总线(I2C).两个多路缓冲串口总线fMcBSPs),两个64位通用定时器(可以配置成4个32位定时器),一个可配置的16位或32位主机接口(HPI6/HPI32).一个PCI总线,一个16管脚的通用输入/输出端口(GPIO),一个10/100/1000M 以太网媒体访问控制器(EMAC)。一个无缝外部存储器接口(64一bit EMIFA),一个32位DDR2 SDRAM接口。

C6455由于自带千兆EMAC,外接PHY物理层芯片即可实现一个千兆以太网口。千兆以太网的实现使得C6455嵌入式处理器与台式机等设备的数据传输变得异常方便。TI为C6455等处理器提供了NDK(Network Develop Kit),通过NDK的使用可以简化C6455中TCP/IP或者UDP等数据传输协议的实现。

基于TMS320C6455系列DSP的中断系统的使用

基于TMS320C6455系列DSP的中断系统的使用

仔细观察上图,可以看出C6455有一下几种中断:

1. Reset

2. NMI 不可屏蔽中断

3. EXCEP 硬件异常

4. 12个普通中断INT[15:4]

我们使用的最多的也就是普通中断,所以这也是本文的重点。

接下来,沿着INT[15:4]往后退,看到的是Interrupt Selector,它的功能好比一个筛子(shuffle),对所有中断事件进行选择性映射。如下图示:

基于TMS320C6455系列DSP的中断系统的使用

看了这个图,我们又不难发现,中断选择器是一个128--》12的映射,这也就意味着,有116个系统事件被过滤掉了。

接着往回走,可以看到,中断选择器有三个输入,分别是:

RESET

Event[3:0]

Event[127:4]

RESET不看了,硬件重启。

EVENT[127:4]是系统事件,这个事件的编号根据芯片的不同而不同,拿6455来说,部分映射情况如下面两个图片所示:

基于TMS320C6455系列DSP的中断系统的使用

基于TMS320C6455系列DSP的中断系统的使用

不难看出,这些编号都是固定的,基本囊括了芯片上所有模块的事件。

最后,比较特别的是Event[3:0],它是组合事件,通过下图的介绍应该就一目了然了。

基于TMS320C6455系列DSP的中断系统的使用

可见,Event0对应 4-31号事件的组合事件,Event2对应32-63号事件的组合事件,以此类推。

那么,怎么组合呢?

这就不得不从寄存器开始说起了。首先,先看如下3个寄存器组:

(注:每组都是4个32位寄存器,每一组的EVTxxx0[3:0]都不使用,故这里不涉及到组合事件)

系统事件发生时(124个),它们在事件标志寄存器中(EVTFLAGx)的对应位会被置1,此时可以通过向EVTCLR寄存器中对应位写入1来清除中断标志,然后执行中断服务程序。若不清除,那么相同事件再次发生时会产生问题。故,手动清除中断标志是必须的!且只能通过向EVTCLR寄存器中写入1来清除,不能直接向EVTFLAG寄存器写入0,因为EVTFLAG寄存器是Read Only的。

另外,EVTSET寄存器的存在意义就是我们可以手动产生中断,这一点可以让我们测试中断服务程序的功能。

介绍完上面三个基本的寄存器组,我们可以开始讨论组合事件的机制了。先看下图:

基于TMS320C6455系列DSP的中断系统的使用

可以明显的看出,124个事件被分成了4组。然后经过两个寄存器的运算,产生组合事件。

下面介绍EVTMASK和MEVT FLAG两个寄存器组。

EVT MASK寄存器组用于决定每一个组中的哪些事件被屏蔽掉。默认情况下,没有事件被屏蔽(全0)。

鉴于最终的组合事件EVTx的发生机制是对Group中所有事件进行或运算,即只要Group中有一个事件发生,就代表组合事件发生。

举个例子:

假如EVTMASK3=0x0FFFFFFF,那么代表只有事件124,125,126,127参与组合。其他事件96-123都被忽略。

MEVT FLAG寄存器同EVT FLAG寄存器的值相同,表示事件是否发生。这样一旦知道了EVTMASK和MEVT FLAG两个寄存器的值就可以断定组合事件EVTx(0《=x《=3)是否发生了。

通过上面的介绍,应该已经很清楚C6455的中断机制了,再贴一张图来巩固一下上面所说的内容:

基于TMS320C6455系列DSP的中断系统的使用

说到这里,我们对上图中红色框以及它之前的东西了解的很清楚了,下面就是Interrupt Selector的机制了。

其实很简单,为12个中断分别配置对应的事件编号即可。只需要3个寄存器就OK啦。

分别是INTMUX1,INTMUX2,INTMUX3。贴一个图就应该很明了了。

基于TMS320C6455系列DSP的中断系统的使用

举个例子:

假设我要让INT4映射到GPIO4,那么通过查找前面的图,发现GPINT4的事件编号是55,那么只要把INTMUX1的低7位设置成0x37即可。

此外,官方文档里还说了下面一段话:

可见,INT4优先级最高,INT15优先级最低

结语

关于TMS320C6455的相关介绍就到这了,希望通过本文能让你对TMS320C6455有更全面的认识。

相关阅读推荐:基于TMS320C6455的高速SRIO接口设计

相关阅读推荐:基于TMS320C6000系列DSP的维特比译码程序优化设计

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • dsp
    dsp
    +关注

    关注

    544

    文章

    7687

    浏览量

    344395
  • TMS320C6455
    +关注

    关注

    0

    文章

    7

    浏览量

    11419
收藏 人收藏

    评论

    相关推荐

    VPX信号处理卡设计原理图:18-基于双TMS320C6678 DSP的3U VPX的信号处理平台

    该板卡是北京太速科技自主研发的基于3U VPX架构的信号处理板,该处理板包含2片TI的TMS320C6678 DSP芯片,1片Xilinx公司的Spartan-3系列XC3S200AN配置芯片,两片
    的头像 发表于 02-17 17:14 291次阅读
    VPX信号处理卡设计原理图:18-基于双<b class='flag-5'>TMS320</b>C6678 <b class='flag-5'>DSP</b>的3U VPX的信号处理平台

    TMS320C6713管脚分类

    TMS320C6713
    发表于 11-16 16:33 41次下载

    基于FPGA和TMS320C40 DSP的可编程通用信号处理背板设计

    电子发烧友网站提供《基于FPGA和TMS320C40 DSP的可编程通用信号处理背板设计.pdf》资料免费下载
    发表于 11-08 14:54 0次下载
    基于FPGA和<b class='flag-5'>TMS320</b>C40 <b class='flag-5'>DSP</b>的可编程通用信号处理背板设计

    基于TMS320C6678的八核DSP雷达信号分选电路

    电子发烧友网站提供《基于TMS320C6678的八核DSP雷达信号分选电路.pdf》资料免费下载
    发表于 11-06 10:28 0次下载
    基于<b class='flag-5'>TMS320</b>C6678的八核<b class='flag-5'>DSP</b>雷达信号分选电路

    基于TMS320LF2407A DSP的全数字舵机伺服系统设计

    电子发烧友网站提供《基于TMS320LF2407A DSP的全数字舵机伺服系统设计.pdf》资料免费下载
    发表于 10-23 09:53 0次下载
    基于<b class='flag-5'>TMS320</b>LF2407A <b class='flag-5'>DSP</b>的全数字舵机伺服<b class='flag-5'>系统</b>设计

    DSP原理及应用第3章 TMS320C54x的数据寻址方式

    电子发烧友网站提供《DSP原理及应用第3章 TMS320C54x的数据寻址方式.ppt》资料免费下载
    发表于 10-09 16:34 0次下载
    <b class='flag-5'>DSP</b>原理及应用第3章 <b class='flag-5'>TMS320</b>C54x的数据寻址方式

    DSP原理及应用第2章 TMS320C54x数字信号处理器硬件结构

    电子发烧友网站提供《DSP原理及应用第2章 TMS320C54x数字信号处理器硬件结构.ppt》资料免费下载
    发表于 10-09 16:32 0次下载
    <b class='flag-5'>DSP</b>原理及应用第2章 <b class='flag-5'>TMS320</b>C54x数字信号处理器硬件结构

    TMS320DM8127开发板介绍

    1 开发板简介 uf0d8 基于 ti 达芬奇系列 tms320dm8127 浮点 dsp c674x + arm cortex-a8 高性能视频处理 器;uf0d8 独立视频协处理器
    发表于 10-09 08:36

    TMS320C6748开发例程使用手册

    一些关于tms320c6748的开发例程,开发板用的是创龙的开发板,流程都详细说明了原因和应有现象了,需要注意的情况也在备注中体现了,在开发过程中敬请注意。
    发表于 10-09 08:33

    tms320f2808数字信号处理器中文资料

    tms320f2808中文资料TMS320F2809 TMS320F2808 TMS320F2806TMS320F2802 TMS320F2
    发表于 08-23 16:33 0次下载

    TMS320F28034: 利用C2prog通过SCI给TMS320F28034烧录程序,出现错误提示:Bootloading... failed (invalid echo)!

    我用的芯片的TMS320F28034,用C2prog软件通过SCI给它下载程序,点击下载后,在第二步出现错误:Bootloading...failed (invalid echo)!如下图所示
    发表于 08-19 20:01

    C6657子卡模块设计方案原理图-基于FMC接口的DSP TMS320C6657子卡模块

    268-FMC连接器是一种高速多pin的互连器件,广泛应用于板卡对接的设备中,特别是在xilinx公司的所有开发板中都使用。该DSP子卡模块以TI强大性能DSP TMS320C6657作为主芯片
    的头像 发表于 08-11 11:56 423次阅读
    C6657子卡模块设计方案原理图-基于FMC接口的<b class='flag-5'>DSP</b> <b class='flag-5'>TMS320</b>C6657子卡模块

    TI DSP实时操作系统

    DSP/BIOS™是一个可定标的实时作业核心(kernel),特地为TMS320C5000™ 及 TMS320C6000™ DSP 的平台所设计。
    的头像 发表于 08-07 16:55 653次阅读

    高速信号处理设计原理图:501-基于TMS320C6670的软件无线电核心板

    北京太速科技自主研发的TMS320C6670核心板,采用TI KeyStone系列的四核定点/浮点DSP TMS320C6670作主处理器。板卡引出处理器的全部信号引脚,便于客户二次开
    的头像 发表于 08-03 11:16 457次阅读
    高速信号处理设计原理图:501-基于<b class='flag-5'>TMS320</b>C6670的软件无线电核心板

    TMS320F28335PGFA参数性能和应用领域

    TMS320F28335PGFA 是德州仪器(Texas Instruments)推出的一款高性能数字信号处理器(DSP)产品。以下是该产品的一些主要特点和可能的应用产品:
    发表于 05-23 11:45 1603次阅读