当前位置:首页 > 嵌入式 > 嵌入式硬件

来源:电子技术应用; 作者:黄红兵 殷小贡 沈文光 任治国
摘要:以TMS320F206为例,阐述了TMS320C2XX系列DSP芯片硬软件设计中应注意的问题。着重探讨了硬件设计、流水线冲突、中断资源、闪速存储器的使用等几个重点问题。
关键词:TMS320F206 流水线 中断 闪速存储器
高速数字信号处理器是当前信息产业的热点技术之一,采用最先进的DSP无疑会使所开发的产品具有更强的市场竞争力。与普通的MCU相比,DSP芯片放弃了冯·诺依曼结构,采用程序存储器总线和数据存储器总线分开的改进的哈佛结构,独立的程序和数据存储器空间允许同时存取程序指定和数据,因而大大提高了处理速度。在改进的哈佛结构的基础上,DSP芯片广泛采用流水线操作减少指令执行时间,从而进一步增强了处理器的数据处理能力,非常适合于实时数字信号处理,但同时也给设计者带来了高频干扰和流水线冲突等诸多问题。
TMS320C2XX系列DSP芯片结构资源相似,开发工具相同,因而其开发设计具有很高的可比性。TMS320F206(以下简称F206)是TI公司TMS320C2XX系列的一款高性价比定点DSP,目前已广泛应用于图形图像处理、语音处理、通信及仪器仪表等领域。由于DSP的开发、应用方式与普通的MCU差异很大,因此探讨其开发设计很有必要。笔者在设计以DSP为核心的产品开发F206时的几点心得,希望对正在和即将进行TMS320C2XX列系DSP开发的同仁们有所帮助。
1 TMS320F206简介
F206是100引脚的TQFP(正方扁平)封装,它主要具有如下特点:
(1)处理能力强。若时钟采用20MHz晶振,则指令周期50ns,运算能力高达20MIPS。DSP芯片采用静态CMOS集成工艺制作,采用四级流水线操作,其先进的哈佛结构允许对数据与指令的操作同时进行,因而大大提高了数据的吞吐率和指令的执行速度,特殊的DSP指令系统提供了功能强大的数字信号处理操作。
(2)片内具有32K×16位的闪速存储器和4.5K×16位的RAM。利用闪速存储器存储程序,不令降低了成本、减小了体积,同时系统软件升级也非常方便;大容量的片内RAM可满足大多数设计要求,无需扩展片外存储器,既降低了成本又使硬件设计十分简洁。
(3)地址映射分为4个可独立寻址的空间:
·64K字程序存储器,包含程序执行所用的指令和数据。
·64K字本地数据存储器,保存指令所用的数据。
·32K字全局数据存储器,保存与其它处理器共用的数据,或者用作额外数据空间。本地数据存储器的上端32K字(8000h-FFFFH)地址空间可用作全局数据存储器。
·64K字的输入/输出(I/O)空间,与外部外围接口,并且包含片内外围寄存器。
(4)资源丰富。F206具有1个同步串行口SSP、1个异步串行口ASP、1个软件可编程定时器(TIMER)以及大量中断资源和独特的JTAG接口等。由于与目标系统之间采用了JTAG逻辑扫描电路接口(基于IEEE1149.1标准),在仿真时不占用硬件资源,且可随时终止仿真察看CPU内部及外设的工作情况,使得程序的调试和查错十分方便。通过JTAG端口可向片内Flash串行下载程序,无需专门的编程器(XDS510仿真器即具有编程功能),进一步减少了开发成本,便于开发设计和产品的软件升级。
2 硬件设计与调试
2.1 硬件设计时应注意的问题
F206硬件设计时,应重点注意以下几点:
(1)时钟电路。DSP时钟可由外部提供,也可由板上的振荡器提供。但一般DSP系统中经常使用外部时钟输入,因为使用外部时钟时,时钟的精度高、稳定性好、使用方便。由于DSP工作是由时钟为基准,如果时钟质量不高,那么系统的可靠性、稳定性就很难保证。因此,若采用外部时钟,选择晶振时应对其稳定性、毛刺做全面的检验,以便DSP系统可靠地工作。
(2)复位电路。应同时设计上电复位电路和人工复位电路,在系统运行中出现故障时可方便地人工复位。对于复位电路,一方面应确保复位低电平时间足够长,保证DSP可靠复位;另一方面应保证稳定性良好,防止DSP误复位。
(3)在DSP电路中,对所有的输入信号必须有明确的处理,不能悬浮或置之不理。尤其要注意的是:若设计中没有到不可屏蔽硬件中断NMI,则硬件设计时应确保将其相应引脚拉高,否则程序运行时会出现不可预料的结果。若设计中用到NMI,也应在程序正常执行阶段置其相应引脚为高电平。
(4)模拟电路与数字电路应分开布置,独立布线后应单点连接电源和地,避免相互干扰。
(5)DSP、片外程序存储器和数据存储器接入电源前,应加滤波电容并使其尽量靠近芯片电源引脚,以滤除电源噪声。另外,在DSP与片外程序存储器和数字存储器等关键部分周围建议布上地网,以减少外界干扰。
(6)片外程序存储器和数据存储器应尽量靠近DSP芯片放置,同时要合理布局,使数据线和地址线长短基本保持一致。对于DSP

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发

嵌入式开发作为当今电子工程和信息技术领域的核心分支,涵盖了广泛的软硬件技术和系统集成方法,用于构建高性能、低成本、低功耗、体积小巧且功能专一的嵌入式系统。这些系统无处不在,从微型传感器节点到复杂的工业控制设备,从日常使用...

关键字: 嵌入式开发 Python

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

嵌入式开发作为信息技术领域的重要分支,其涉及的语言种类繁多,各具特色。这些语言的选择取决于目标平台的特性、性能需求、开发者的熟练程度以及项目的具体要求。本文将详细介绍几种常见的嵌入式开发语言,包括C语言、C++、汇编语言...

关键字: 嵌入式开发 C语言

嵌入式开发是一项综合了硬件设计、软件编程以及系统整合的技术活动,其目的是为了创造出能够在特定环境中高效、稳定运行的嵌入式系统。这一流程涵盖了多个紧密关联且不可或缺的阶段,从最初的客户需求分析到最终的产品测试和交付,每个环...

关键字: 嵌入式开发 硬件设计

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

嵌入式开发作为信息技术的关键支柱,在全球数字化转型浪潮中扮演着无可替代的角色。从传统的嵌入式微控制器到如今先进的片上系统(SoC),再到与云计算、人工智能深度融合的智能终端,嵌入式系统的演进与发展始终紧跟时代脉搏。本文将...

关键字: 嵌入式开发 智能应用

嵌入式开发是一种专门针对特定硬件平台设计和实现软件系统的工程实践,它涵盖了从需求分析、系统设计、编程实现、调试测试直到产品部署及维护的全过程。本文将深入探讨嵌入式开发的主要阶段,分解其流程并阐述每个步骤的关键要点,以便于...

关键字: 嵌入式开发 嵌入式软件
关闭
关闭