第一章
1现代电子系统设计的工作主要体现在哪三个方面,内容分别是?
·系统模型:将电子系统抽象化和得到的描述系统功能和性能的数学模型和算法模型,使用相应的设计软件
·集成电路芯片IC:将控制、运算和数据处理等功能模块化集成在半导体芯片上
·PCB板:连接各种芯片和元器件,并使整个系统的硬件实现满足电磁兼容的要求
2为什么产生EDA技术
集成电路技术的发展导致了越来越多的产品将整个系统集成在一块芯片上,以便利用只是产权来生产高附加值的产品另外,技术的发展和市场的竞争也要求厂家的新产品上市的速度要快。系统芯片的出现时得系统的性能得到很大的提高,它是未来复杂数字系统的发展方向。现代电子产品的规模越来越大,复杂度越来越高,传统设计方法无法胜任;同时随着计算机技术的不断提高,人们逐步利用计算机来辅助完成电子系统的设计工作。
3EDA技术中“自上而下”的设计流程是什么?
从系统总体要求出发,从上层至下层逐步地将设计内容细化,然后完成系统硬件的整体设计
4采用EDA技术有哪些优势?
·降低了系统硬件电路的设计难度
·采用系统设计早期的仿真工具
·HDL语言是强有力的设计工具
·自行设计ASIC芯片
·主要文件是HDL源程序
第二章
1系统级的建模和仿真有什么样的重要性
系统级的设计主要描述系统的功能和技术指标,而不考虑系统的具体实现,因此首先要建立系统的数学模型和算法模型。在此基础上,利用相应的设计工具对这些模型进行仿真,分析和论证,以保证这些模型的正确性和有效性。EDA软件设计工具可以自动完成具体的电路设计和验证工作,这就大大提高了产品的设计效率,缩短了开发周期。
2计算机仿真的三个基本要素是什么?它们之间有怎样的联系?
系统,系统模型和计算机(仿真算法)
(系统)建模(系统模型)二次模型(计算机) 仿真实验(系统)
3模拟IC的设计中,电路分析起到什么样的作用
电路分析是电路设计的前提和基础。电路分析可以帮助设计者增强电路知识,了解各种拓扑结构的优势和缺点,为设计者选择合适的电路结构提供参考。
4数字IC芯片的设计流程中,前端设计和后端设计一般是如何划分的?前端设计分为哪几个层次?每一个层次的功能是什么?
前端设计与系统的实现技术无关,而后端设计与系统的实现技术密切相关。
前端设计分为三个层次:系统级描述,RTL级描述和综合
·系统级描述:对整个芯片内部的系统的数学模型的描述
· RTL级描述(寄存器传输级描述或数据流描述):用于导出系统的逻辑表达式,以进行下一步的逻辑综合,暗指用户所描述的寄存器里的数据以用户说明的方式在传输。
· 逻辑综合:利用逻辑综合工具对RTL级描述程序转换成用基本逻辑元件表示的文件(门级网络表)
5数字IC芯片的后端设计有几种硬件实现方式?它们各有什么特点?0
· 第一种是利用可编程逻辑器件FPGA或CPLD来完成硬件设计;优点是集成度高,速度快,开发周期短,设计灵活方便;缺点是产量增大时,成本太高
· 第二种是由自动布线器将网表转换成响应的专用集成芯片的制造工艺,做出ASIC或SOC芯片;优点是可以达到更高的速度和更大的集成度,缺点是前期设计的成本较高,并需要半导体厂家的合作
不管哪种实现方式,都必须用响应的布局布线和验证软件工具进行设计,并且需要有半导体厂家提供的元件库支持
6什么叫做用户全定制IC设计,用户半定制IC设计和SOC设计?
· 用户全定制电路:用户要求厂家专门定做的芯片
· 用户半定制电路:设计和生产过程中的某些部分可以预先加工或预先制作,形成标准单元,并可为所有用户选用。
· SOC设计:系统级芯片设计,将不同功能模块集成在一片芯片上
7ASIC电路由哪些特点?
·降低了产品的综合成本
·提高了产品的可靠性
·提高了产品的保密程度和竞争能力
·降低了电子产品的功耗
·提高了电子产品的工作速度
·大大减少了电子产品的体积和重量
·不涉及非常专业的布局布线知识和经验
8为什么说现代电子系统的发展趋势是从标准通用电路向ASIC设计过渡?
ASIC是目前解决大规模复杂电子系统实现问题的有效方法,优点是便于实现高容量高复杂度的数字系统,提高系统性能,并利于保护知识产权。
9什么是IP复用技术?IP模块有哪三种形式?它们各有什么特点?
IP复用技术:SOC设计中,采用已有设计完成的不同功能模块实现系统功能
软IP: RTL模型复用
· 以HDL代码形式存在,为后续设计留有很大的发挥空间
· IP的设计灵活性和适应性强,成本较低
· 需要设计人员深入理解HDL代码,并将其转换成掩模布局,以产生合理的物理层设计结果
固IP: 网表复用
· 完成了综合的功能块,以网表文件的形式提交,具有一定的设计深度
· 如果客户与固IP使用同一个IC生产线的单元库,则IP应用的成功率会很高
硬IP:设计版图的复用
· 物理掩模布局已经得到证明的IP,灵活性最小
· 在使用具有不同语义环境的设计或由另一个设计者完成的设计时,硬IP是最安全的途径
· 基于移植的设计复用使用硬IP,是一种最省时省力的复用方法。
· 需要布局移植工具解决新、旧工艺技术不同的问题
10印刷电路板的布局布线设计中有哪些应遵循的基本规律?
布局设计:
·选择合适的印刷电路板
·合理安排不同类型的电路模块
·合理排列各类元器件
·合理安排电源和地线分布
布线设计:
·首先设计电源线和地线
·按信号的传输方向,顺序设计各个电路模块的导线
·注意导线的宽度、线距和拐角的设计
·注意双面板和多层板各层的功能和走线划分
11基于IP模块的设计方法
· 全定制设计方法:用户只提出设计要求,系统设计和IP的复用都由专门的芯片厂商完成,设计时间较长,设计完成后不易修改
· 部分集成法:用户负责专用电路的设计,IP复用和系统的集成由芯片厂商完成,有一定的灵活性
· 桌面设计法:用户自己设计专用电路和IP模块的复用,最后由芯片厂商生产芯片,设计灵活性最大
第三章
1什么叫现场可编程性
指用户任何时候都可以通过电路板上的下载电缆或硬件编程器来修改FPGA/CPLD的配置,以达到修改自己设计的目的。
2可编程逻辑器件有什么优点
· 随着VLSI技术的不断提高,FPGA/CPLD芯片的集成度越来越大,单片容量已达到几百个逻辑门,能实现的功能越来越强,也易于实现单片系统
· 芯片由厂家生产,设计人员通过相应的软件来设计系统,不会带来硬件方面的损耗,设计系统的研制开发费用相对较低
· 用户可以反复编程、擦除和使用,因此可以很灵活的试制原型产品,并可以在外围电路不变的条件下,通过修改程序改变设计的功能
· 电路的设计周期短,可以快速投放市场
3FPGA和CPLD有什么相同点和不同点
FPGA芯片是由 可构造的输入、输出块(IOB)、可构造逻辑块(CLB)和可编程连线(PI)三种基本单元组成
CPLD主要由逻辑阵列块(LAB)、I/O单元(IOE)和可编程连接阵列(PIA)组成
相同:
· 都具有现场可编程性
· 都由三大部分组成
1一个二维的逻辑块阵列,构成了PLD器件的逻辑组成核心
2输入/输出块;
3连接逻辑块的互连资源,由各种长度的连线线段组成,其中也有一些可编程的连接开关,他们用于逻辑块之间、逻辑块与输入/输出块之间的连接
差别
· 逻辑单元的粒度不一样,设计灵活性不同。FPGA粒度小,设计更灵活
· FPGA的逻辑门密度更高
· CPLD的内连线采用交叉开关结构,内连率很高,内部连线长度不会累积,FPGA采用有限的布线线段连接内部各部件,内部连线长度会产生累积,因此需要人工布局布线来优化速度和面积
· CPLD的布线结构决定了它的时序延迟是均匀的和可预测的,即在设计输入不变的情况下,每次布局布线后其时序延迟是一定的;FPGA分段式布线结构导致了每次布局布线后的延迟是不一样的
· 虽然二者都可以集成成千上万门的数字逻辑电路,但比较而言,CPLD更适合于完成各类算法和组合逻辑,而FPGA更适合于完成时序较多的逻辑电路
4Xilinx公司的XC3000系列FPGA结构中包括哪几个主要部分?各部分的功能是什么?
· 可编程逻辑块CLB
· 可编程输入输出模块IOB:控制输入输出
· 可编程内部连线PI:连接芯片内部的CLB之间,IOB之间和IOB与CLB之间
· 可配置存储器SRAM阵列:装载配置文件,控制CLB、IOB和PI的连接,可重复使用
5ALTERA的FLEX10K系列器件结构中包括哪几个主要部分?各部分的功能分别是什么?
· 嵌入式阵列:把定制的硅片嵌入到PLD们阵列基片中的大块的RAM,它由一系列嵌入式阵列块(EAB)构成,用来实现逻辑功能和存储功能
· 逻辑阵列:由一系列逻辑阵列块LAB构成,实现逻辑功能
· 快速通道:提供器件内部信号的互连和器件引脚之间的信号互连
· I/O单元:负责完成I/O引脚的驱动
四、五章
复习并练习VHDL语言编程,语句的语法格式可不记
七章
1本课程中,DSP的含义是什么
数字信号处理器(Digital Signal Processor),是指实现数字信号处理算法的一种专用的微处理器。
2实现数字信号处理中的算法一般有哪些方式?它们各有什么特点
· 通用计算机和微处理器(软件编程):编程灵活,修改方便,速度较慢
· 数字逻辑电路(硬件):无需编程、速度最快,结构固定不灵活
· DSP(软件编程+专用硬件结构):软硬结合,编程灵活,关键运算采用硬件,速度快
3什么叫做定点DSP和浮点DSP?在这两种DSP中,数据是如何表示的?
定点DSP:
· 采用定点格式的数据工作
· 动态范围小,易溢出,功耗低,结构简单
· 数据以二进制补码形式表示
浮点DSP:
· 采用浮点格式的数据工作:
· 动态范围大,给编程和寻址带来方便:
· 浮点数a用指数e,符号s,分数f可以表示为
A = ( ( -2)^s + (.f) ) *2^e
4定点数的小数点标定有哪两种方法?小数点的变化对表示的数有何影响
Q表示法:给出小数位数,如Q15
S表示法:给出整数和小数位数,如S0.15
小数位数越多,数值范围越小,精度越高
5在定点DSP中,数据的实际值和存放值如何转换?
实际值X转换为存放值XQ : XQ = int(X * 2^Q)
存放值XQ转换为实际值X : X = float(XQ * 2^-Q)
6在DSP中,如何实现除法运算
一般不提供单周期除法指令,采用除法子程序实现;二进制除法是乘法的逆运算;二进制除法可以分解为一系列的移位和减法:
定点除法步骤:
· 除数的最低有效位对齐被除数的最高有效位,作减法运算
· 若减法结果为负,放弃结果,将被除数左移一位再减
· 若结果为正,将减法结果左移一位后加一,做减法
·结果为正,将结果左移一位加一直到结果为8位,其中高四位余数,低四位为商
八章
1 TMS320C54x系列DSP的结构中包含哪些主要硬件部分
中央处理单元(CPU)、片内存储器和在片外设
· 中央处理单元(CPU或DSP核)
· 片内存储器
· 串行口
· 主机接口
· 其他在片外设
· 内部总线
2什么是改进的哈佛结构?TMS320C54xDSP内部总线分别为多少条
哈佛结构:处理器具有独立的程序和数据总线,独立的程序和数据空间;
· 优点:处理器可以同时对数据和程序空间进行并行访问,处理速度快;
· 缺点:外部引脚太多,成品率低
改进的哈佛结构:DSP芯片内部采用哈佛结构,外部总线合并为一组
TMS320C54x内部有八条16bit总线,其中一条程序总线,三条数据总线和四条地址总线
3在TMS320C54x DSP的体系结构里增加了哪些硬件部件?具体说明这些硬件部件是如何提升DSP性能、适应密集运算的
· 采用多级流水线技术,可以使DSP在一个机器周期内同时对多条指令进行处理,加快运行速度
· 采用专用的汇编指令,与硬件系统相对应,复杂功能用一条单周期指令完成,指令周期短
· 专用的硬件乘法器,支持单周期的乘法或乘/加法,大大加快了运算速度
· 40bit的算术逻辑单元ALU可进行单周期的算术逻辑运算
· 比较选择和存储单元,加速了Viterbi解码运算,特别适用于数字通信领域
· 指数编码器,支持单周期EXP指令的专用硬件电路
4 HPI接口是串口还是并口,它的主控者是谁?它是如何使外接主机和DSP交换信息的?
· 主机接口HPI是一个8bit的并行口,可以用来与一个主机进行连接,通过HPI接口,C54x和外接主机之间可以交换信息;
· 主控者是外接主机
· 当主机传送数据给HPI寄存器时,HPI控制逻辑自动对内部双重访问RAM中的一个专用的2k字的存储块进行访问,完成数据传输,然后C54x可通过访问自己的存储空间来访问这些数据
· 两种操作模式:1共享访问模式2主机独享模式
5 TMS320C54xDSP有几种类型的串口?出了标准串口外,其他几种串口增加了什么样的功能
有四种:
· 标准串口SP
· 缓冲串口BSP:由一个全双工、双缓冲串行口和一个自动缓冲单元ABU组成;ABU可使串口在没有CPU控制的情况下,直接对C54x内部存储器进行读写,使串口传送数据的开销降至最小,有更快的数据传输速率
· 时分复用串口TDM:将一个时间间隔划分为更多小的时间间隔;可使一个C54x器件最多可与七个其他器件进行通信,因此提供了一种简单有效的多处理应用的接口。
· 多通道缓冲串口:双缓冲发送寄存器,三缓冲接收寄存器;允许连续数据传送;独立的接收和发送帧同步和时钟信号;直接与工业标准的编解码器、串行A/D、D/A接口;可产生外部移位时钟或内部可编程的移位时钟;多达128个信道的接收和发送;
6在TDM串口的多处理模式下,连接在总线上的多个器件是如何按顺序进行工作的?
在一个特定的时隙里只有一个器件可以驱动数据和地址线(TDAT和TADD),其他器件都要对TDAT和TADD线采样以确定是否当前发送的有效数据要读取。如果一个器件识别到一个它应该响应的地址,那么该器件就进行一个有效的TDM读操作,数值从接收一位寄存器传送到数据接收寄存器TRCV。当TRCV有了一个有效的接收数据并且可以读取时,就产生接收中断TRINT
7 TMS320C54x DSP有那几种存储空间,他们的容量各有多少?是如何确定的?
· 程序空间:可访问的程序存储器有64k,包括片内ROM、片内RAM、片外RAM
· 数据空间:可访问的数据存储器有64k,包括片内ROM、片内RAM、片外RAM
· I/O空间
片内RAM一般映射到数据空间,但也可以映射到程序空间
ROM一般映射到程序空间,也可部分映射到数据空间
C54x器件的处理器模式状态寄存器PMST中有三位影响存储空间的结构:MP/MC、OVLY、DROM
MP/MC和OVLY决定论片内哪些寄存器映射到程序空间
MP/MC=1,片内ROM被禁止。
MP/MC=0,片内ROM映射到程序空间。
OVLY=1,一部分片内DARAM被同时映射到程序和数据空间,
OVLY=0,没有片内RAM被映射到程序空间,此时RAM只能作数据存储器。
DROM决定了部分片内ROM映射到数据空间
DROM=0,没有片内ROM被映射到数据空间中;
DROM=1,有一部分片内ROM被映射到数据空间中
8 TMS320C54x DSP有怎样的存储空间组织形式?
分成三个独立可选的空间:64k字程序存储器、64k字数据存储器、64k字I/O存储空间。在某些C54x器件中,存储器结构可通过重叠和分页方法加以改变,允许附加额外的存储器空间
九章
1TMS320C54x DSP有几种数据寻址方式?它们是如何确定操作数地址的?
七种
· 立即寻址:由指令来提供一个操作数
· 绝对寻址:由指令来提供一个操作数的地址
· 累加器寻址:将累加器内容作为地址来访问程序存储器的某个单元
· 直接寻址:将指令中的7位作为偏移量,偏移量再加上DP或SP的值就得到了数据存储器中的实际地址
· 间接寻址:利用辅助寄存器访问存储器。
· 存储器映射寄存器寻址:用来改变映射寄存器,但不会影响当前的DP或SP值
· 堆栈寻址:用来管理系统堆栈中的操作
2 TMS320C54x DSP的指令流水线有几段?分别完成什么功能?
6段分别是:预取、取指、译码、访问、读取、执行
3 TMS320C54x DSP的指令系统可以完成哪几类基本操作
· 算术操作:包括加法、减法、乘法、乘/累加、乘/减法、加倍指令和专用指令
· 逻辑操作:包括与、或、异或、移位和测试等指令
· 程序控制操作:包括跳转、调用、中断、返回、重复、堆栈操作和同时程序控制指令
· 装载和存储操作:包括装载、存储、条件存储、并行装载和存储、并行装载和乘、并行存储和加/减、并行存储和乘、同时装载型和同时存储型指令
· 单指令重复运算操作:可以使跟在其后的下一条指令重复运行,重复次数等于指令中的操作数加一
4TMS320C54x DSP的指令集有那两种书写形式?各有什么特点?
· 助记符指令集:与计算机汇编语言相似,采用助记符来写指令,便于用户记忆和使用。
· 代数指令集:指令类似于代数式的表达方式,运算关系比较清楚明了。
附录
英文缩写
EDA : Electronic Design Automation 电子设计自动化
IC : Integrated Circuit 集成电路芯片
PCB : Printed Circuit Board 印刷电路板
ASIC : Application Specific Integrated Circuit 专用集成电路
SOC : System on Chip 系统芯片
HDL: Hardware Description Language 硬件描述语言
RTL: Register Transfer Level
PAL: Programmable Array Logic 可编程逻辑阵列
GAL: Generic Array Logic 通用阵列逻辑
FPGA: Field Programmable Gate Array 现场可编程门阵列
CPLD: Complex Programmable Logic Device 复杂的可编程逻辑器件
DSP: Digital Signal Processor 数字信号处理器