配色: 字号:
《数字系统设计》第一章 数字系统设计概述
2022-11-02 | 阅:  转:  |  分享 
  
第一章 数字系统设计概述主讲人: 王 前课程负责人:徐向民教授本章目录数字系统概念常见数字系统设计方法数字系统设计历程PLD发展趋势课程
学习建议1、数字系统概念本节内容 基本概念 分类 理论基础 基本结构 特点 应用1、数字系统概念 用数字信号完成数字量存储、
传输、处理的电路称为数字电路。数字电路包括组合逻辑电路、时序逻辑电路两类。 系统泛指由一群有关连的个体组成,根据预先编排好的规则工
作,能完成个别元件不能单独完成的工作的群体。 数字系统则是以基本数字电路为基本组成单元的电子系统。1.1 基本概念
系统数字系统1、数字系统概念1.1 基本概念数字电路组合电路时序电路1、数字系统概念①组合逻辑电路由最基本的逻辑门电路组合而成;输
出值只与当时的输入值有关;类似于模拟电路中的纯电阻电路;加法器、译码器、编码器、数据选择器等均属于组合逻辑电路。1.2 数字电路分
类1、数字系统概念组合逻辑电路模型1、数字系统概念 ②时序逻辑电路由逻辑门电路与存储器组成的反馈逻辑回路构成;具有记忆功能。输出不
仅取决于当时的输入值,还与电路过去的状态有关;类似于模拟电路中含储能元件电感或电容的电路;触发器、锁存器、计数器、移位寄存器、储存
器等电路均属于时序电路。1.2 数字电路分类1、数字系统概念时序逻辑电路模型1、数字系统概念 广义数字系统的理论基础是逻辑代数。
各种数字系统均可使用逻辑代数作为表示,化简,设计推理的工具。?1.3 数字系统理论基础1、数字系统概念逻辑代数 也叫做开关代数。起
源于英国数学家乔治?布尔(George Boole)于1849年创立的布尔代数。 由变量集、常量 0 和 1 及“与”、“或”、“
非”三种运算所构成的代数系统。1、数字系统概念 数字系统在结构上分为数据处理单元和控制单元,由输入部件、输出部件及逻辑系统组成。
其中逻辑系统包括存储部件、处理部件、控制部件三大子系统。1.4 数字系统基本结构1、数字系统概念数字系统内部所传输处理的对象均为基
本数字逻辑变量数据处理单元逻辑系统1、数字系统概念①同时具有算术运算和逻辑运算功能 以二进制逻辑代数为数学基础,既能进行算术运算又
能方便地进行逻辑运算(与、或、非、判断、比较、处理等),极其适合于运算、比较、存储、传输、控制、决策等应用。②实现简单,系统可靠
以二进制作为基础的数字逻辑电路,简单可靠,准确性高。③集成度高,功能实现容易 集成度高,体积小,功耗低。电路的设计、维修、维护灵活
方便。1.5 数字系统的特点1、数字系统概念 广泛的应用于电子计算机、自动控制、航天、雷达、通信、数码家电、移动手持设备等各个领域
。1.6 数字系统的应用1、数字系统概念2、常见数字系统设计方法本节内容: 基于中小规模集成电路的设计方法 设计思想 设计特
点 一般步骤 设计案例 基于MCU的设计方法 基于PLD的EDA方法三种设计方法总览2、常见数字系统设计方法 2.1.1主要设计思
想 2.1基于中小规模集成电路的设计方法采用固定功能的器件(通用型器件,如与74系列等),根据连接逻辑关系,设计电路板实现功能
。电路运行速度快,实时性好。大部分设计依赖人工完成,过程复杂繁琐。设计周期长,易出错,产品灵活性差。2.1.2设计特点将具体问题抽
象为基本逻辑关系,自下而上进行设计。2、常见数字系统设计方法 2.1.3 一般步骤 仅以设计数字时钟数码管译码、显示电路的设计为例
输入:数字变量0—9输出:数码管显示0—9IN:A,B,C,D (二进制需4位数表示0~9)OUT:Fa, Fb, Fc, Fd,
Fe, Ff, Fg (7位输出驱动七段数码管)①问题抽象与变量定义2、常见数字系统设计方法 ②输入输出真值表根据输入输出
的实际关系画出真值表2、常见数字系统设计方法 ③逻辑关系化简 变量数量较少时常用卡诺图法化简,示意如下,具体过程省略
。……化简得出输出关于输入的逻辑关系式如:?2、常见数字系统设计方法 ④逻辑电路原理图(示意):使用基本逻辑门实现功能由输入输出逻
辑关系式画出逻辑电路原理图。2、常见数字系统设计方法 ⑤实际电路连接图实际逻辑器件根据逻辑电路原理图画出实际器件电路连接图,最终制
成系统PCB板。2、常见数字系统设计方法 将具体问题转化为算法流程图。2.2基于MCU,DSP的设计方法使用高级程序语言(如C,
C++)编写算法;编译器自动编译链接成可执行代码;描述方法上具有直观、灵活的优势;硬件电路及板图设计更为简单强干扰(PC指针容易跑
飞)、要求高速处理(指令串行执行)的特殊应用中一般MCU难以满足要求。2.2.2 设计特点2.2.1主要设计思想2、常见数字系统设
计方法 同样简单以设计数字时钟为例2.2.3 一般步骤2、常见数字系统设计方法 ②算法流程图设计2、常见数字系统设计方法 ③C/汇
编代码集成开发环境中将算法设计转化为源代码2、常见数字系统设计方法 ④软件仿真(Protues等)源代码经编译连接后下载到MCU中
2、常见数字系统设计方法 ⑤硬件实现实体MCU(如51系列单片机)2、常见数字系统设计方法2.2.4 DSP及其简单应用
DSP(digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。
在保密通信、雷达处理、声呐处理、导航、全球定位、跳频电台、搜索和反搜索等有很多的应用2、常见数字系统设计方法 2.3.1主要设计思
想2.3基于PLD的EDA设计方法 采用硬件描述语言,结合图表化的描述进行顶层算法设计;从行为描述、寄存器传输级描述、逻辑综合三个
层次逐步细化;复杂繁琐的逻辑编译、化简、分割、综合、优化、布局布线、仿真等均由EDA工具自动完成;这种自顶向下的设计思想更符合人的
思维方式。2.3.2设计特点将具体问题按照并行工程、自顶向下的思想,从概念、算法、协议开始设计电子系统,采用相应的描述方式分层设计
,逐步细化。2、常见数字系统设计方法 第一步:按照"自顶向下"的设计方法进行系统划分。 第二步:输入
高层设计:HDL代码,图形(框图,状态图等)。 第三步:利用EDA综合器对HDL源代码进行自动综合优化处理,生成门级
描述的网表文件。 第四步:利用EDA适配器将网表文件针对具体目标器件进行自动逻辑映射操作。(底 层器件配置、逻辑分割
、逻辑优化和布局布线。) 适配完成后,产生多项设计结果:①适配报告,包 括芯片内部资源利用情况,设计的布尔方程描述情况
等;②适配后的仿真模型;③器件编程文件。 2.3.3一般步骤2、常见数字系统设计方法 第五步:根据适配后的仿真模型,进行适配后的
软件仿真。 因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确地预期未来芯片的实际性能。如果仿真结
果达不到设计要求,就需要修改源代码或选择不同速度品质的器件,直至满足设计要求。第六步:将适配器产生的器件编程文件通过编程器或下载电
缆载入到目标芯片FPGA或CPLD中。 如果是大批量产品开发,通过更换相应的厂家综合库,可以很容易转由ASIC形式
实现。2、常见数字系统设计方法 同样以数字时钟系统的设计简单为例①顶层方案设计 利用数码管显示时间,利用按键开关进行
修改与设置的操作,利用拨码开关改变闹钟运行的模式,利用蜂鸣器发出各种提示音,利用发光LED表示闹钟运行的各种状态。2、常见数字系统
设计方法 采用模块化的思想,将系统总的功能分解成若干个子功能。初步考虑分为3个部分:键盘部分、处理器部分和显示部分。
键盘模块通过扫描按键开关和拨码开关得到操作信息,处理器模块通过键盘模块输入的操作信息处理数据,并加处理后的时间数据传给显示模块
,由显示模块显示结果。② 模块划分2、常见数字系统设计方法 ③输入高层设计EDA工具中使用图形方式输入高层设计2、常见数字系统设计
方法 ④设计细化:HDL语言实现实体功能用硬件描述语言具体化高层设计2、常见数字系统设计方法 ⑤逻辑编译化简、综合
优化、适配、布局布线、仿真模型生成由EDA工具自动完成;获得门级电路描述网表。和所选PLD器件的结构相关联利用PLD器件内部的布线
资源来完成各种逻辑块和I/O块之间的电器连接。以上过程一般不需人工参与2、常见数字系统设计方法 ⑥编译完成后可以查看资源占用情况
甚至可以查看底层逻辑块的连接关系综合后资源的利用情况报告模块名字已利用资源未利用资源2、常见数字系统设计方法 ⑦根据综合后得到的仿
真模型使用仿真工具进行软件时序仿真分析Quartus自带波形仿真工具,也可使用其它仿真工具如Modelsim。是否记得数电实验也有
类似的图2、常见数字系统设计方法 ⑧分配相应物理管脚,下载至FPGA/CPLD器件中使用软件改变硬件结构的一个体现:实际物理连接关
系改变时,只需通过软件重新分配PLD管脚。自定义的端口名字表示每个端口的输入输出模式每个端口与实际开发板上面的物理接口连线2、常见
数字系统设计方法 ⑨实际运行效果实际可编程逻辑器件2、常见数字系统设计方法 2.4 总览三种设计方法,可以看出:基于中小规模集成电
路的设计方法电路运行速度快,实时性好。然而过程过于繁琐复杂,不适用于大型的数字系统设计;基于MCU的设计方法较为直观人性化,然而M
CU的性能难以满足某些特定场合(如高速情况下)的应用需求;基于PLD的EDA设计则是一种全新的设计思想与设计理念。兼具了中小规模集
成电路设计与MCU设计方式的优点;在顶层设计上采用多种输入描述方法,具有MCU方式设计的灵活性、直观性;底层硬件逻辑设计由EDA工
具自动完成保证了设计效率;功能开发上是软件实现的,物理机制为纯硬件电路;纯硬件的物理机制使其具有更强的抗干扰能力、更快的运行速度。
3、数字系统设计历程 本节内容 CAD(计算机辅助设计)阶段 CAE(计算机辅助工程设计)阶段 EDA(电子设计自动化)阶段
现代EDA数字系统设计与传统设计方式对比 设计流程 描述方法 设计手段 系统硬件构成 数字系统发展趋势 EDA市场发展与就
业3、数字系统设计历程20世纪70年代起始的CAD(计算机辅助设计)阶段20世纪80年代起始的CAE(计算机辅助工程设计)阶段20
世纪90年代起始的EDA(电子设计自动化)阶段 现代电子设计技术的核心已趋向以计算机辅助的电子设计自动化,即EDA
技术。主要有3个阶段:3、数字系统设计历程主要工作:PCB设计、电路模拟、集成电路版图编辑常用工具软件:Tango、SPICE3.
1 CAD(计算机辅助设计)阶段3、数字系统设计历程主要特点: PCB设计、原理图输入、电路分析、逻辑仿真、自动布局布线常用工
具软件: Mentor Graphics、Valid Daisy等公司的产品3.2 CAE(计算机辅助工程设计)阶段3、数字系
统设计历程主要特点: 硬件描述语言、系统级仿真和综合技术、“自顶向下”的设计理念常用工具软件: Quartus、ISE、Isp L
EVER3.3 EDA(电子设计自动化)阶段3、数字系统设计历程设计流程描述方法设计手段系统硬件构成3.4 现代EDA数字系
统设计与基于中小规模集成电路的传统设计方式对比主要区别3.4.1设计理念3.4.2描述方法与设计手段传统设计方式以逻辑函数与单元模
块电路为主整个设计流程需要人工参与EDA设计方式以硬件描述语言(Hardware Description Language,HDL
)为主EDA工具完成逻辑编译、化简分割、综合优化、布局布线、仿真3、数字系统设计历程3.5 数字系统发展趋势简单数字系统复杂数字系
统片上数字系统数模混合片上系统(SoC)3、数字系统设计历程3.6 EDA市场发展与就业从应用领域来看,EDA技术已经渗透到各行各
业,包括在机械、电子、通信、航空航航天、化工、矿产、生物、医学、军事等各个领域,都有EDA应用。另外,EDA软件的功能日益强大,原
来功能比较单一的软件,现在增加了很多新用途。全球EDA产业市场规模(不完全统计)資料來源:Gary?Smith?EDA(2009/
02);MoneyDJ 財經知識庫?3、数字系统设计历程 在数字IC设计领域,前端验证工作一般都是用FPGA完成的,因此FPGA工
程师也是IC设计公司迫切需要的人才。 FPGA/IC逻辑设计开发已经成为当前最有发展前途的行业之一,特别是熟悉硬件构架的FPGA系
统工程师。 中国EDA市场已渐趋成熟,不过大部分设计工程师面向的是PCB制板和小型ASIC领域,仅有小部分(约11%)
的设计人员开发复杂的片上系统器件。3、数字系统设计历程 中国和印度正在成为电子设计自动化领域发展最快的两个市场,年夏合增长率分别达
到了50%和30% 业内人士认为,目前FPGA/IC设计行业至少有20-30万的人才缺口,仅北京市场FPGA硬件开发
人员的需求就已经超过了3万人华清远见公司2009-2010年中国EDA开发从业人员调查报告(薪资分布)3、数字系统设计历程
美国已有FPGA人才40多万,台湾地区有7万多,而中国内地仅有一万左右。 EDA技术代表着现代数字系统设计的
最新发展方向,主要应用于高端产品领域,传统单片机MCU设计则逐步趋向中低端应用。3、数字系统设计历程从招聘岗位要求看来,从事EDA
数字系统设计行业一般必须具备以下能力:数字电子电路理论基础 Verilog HDL或VHDL语言与应用;主流公司公司CPLD/FP
GA器件特性,Quartus软件应用;项目test-bench的编写,Modelsim仿真工具;OVM/UVM/VMM验证学,能搭
建SOPC芯片、FPGA验证环境。4、课程学习本节内容 课程内容 硬件平台;软件平台; 开发语言;系统设计方法;授课安排学习经验
心得配套开发板介绍4、课程学习4.1 课程内容概述 硬件平台: Altera PLD芯片介绍 软件平台: QuartusII 开发
语言: VHDL、Verilog 系统设计方法4.1.1 可编程逻辑器件 可编程逻辑器件(Programmable Logic D
evice,PLD)是一种可由用户对其进行编程的大规模通用集成电路。PLD给数字系统设计带来革命性影响,如同一张白纸,工程师可以通
过原理图输入法、硬件描述语言等自由设计一个数字系统,是实现数字系统的理想器件。PLD能完成任何数字器件的功能,上至高性能CPU,下
至简单的74系列IC。4、课程学习4.1.2 QuarutsII Altera公司PLD(FPGA、CPLD)集成开发平台,包含
设计输入、综合、布局布线、嵌入式开发、IP核、时序分析、功耗分析等功能。 MaxplusII:QuartusII以前的4、课程
学习 HDL的全称是Hardware Description Language,即硬件描述语言,可以在三个层次上进
行电路描述,由高到低为系统行为级、寄存器传输级和逻辑门级。 常用的HDL有VHDL、Verilog和AHDL。HD
L新发展: SystemVerilog、SystemC 4.1.3 HDL简介4、课程学习VHDL用于电路设计的高级语言。最初由
美国国防部开发 VHDL的英文全写:VHSIC(Very High Speed Integrated Circuit)Hardw
are Descriptiong Language. 超高速集成电路硬件描述语言。主要应用在数字电路的设计中。4、课程学习使用VH
DL进行数字系统设计的优点: (1)系统硬件描述能力强,适合大型项目与团队开发。 (2)VHDL丰富的仿真语句和库函数,使得在
任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。 (3)VHDL具有强大的行为描述能力,可以避开具体
的底层器件结构设计。 (4)VHDL符合IEEE工业标准,编写的模块容易实现共享和复用。 (5)VHDL对设计的描述具有相
对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。4、课程学习SystemVerilo
gVerilog的超集,在面向对象和验证平台方面进行了扩展。SystemC C++的基础上添加的硬件扩展库和仿真库结合了面向对象编
程和硬件建模机制原理软硬件协同设计HDL新发展:4、课程学习第一章 数字系统设计概论 ( 4学时)第二章 EDA开发软件与硬件平
台 (2学时)第三章 硬件描述语言(VHDL)基础 (8学时)第四章 组合逻辑电路描述 (3学时)第五章 基本时序逻辑电路描述
(3学时)第六章 同步时序电路设计方法与状态机 (8学时)第七章 仿真与综合 (4学时)第八章 数字系统设计方法与案例分析
(4学时)讲座1:Testbench设计 (4学时)讲座2:IP核的设计 (4学时)讲座3:Verilog语言
(4学时)4.2 课程授课安排4、课程学习4、课程学习4.3 学习经验心得学习方法:由浅而深,逐步提高。入门了解EDA设计领
域涉及的关键词,对必须掌握的知识内容有初步了解;熟悉一种硬件描述语言如VHDL、Verilog(语法,结构,基本语句);熟悉一种EDA设计工具如QuartusⅡ、ISE(操作,仿真,调试);设计一段简单的代码(加法器、计数器、串并转换器),仿真并实践验证;设计并实现一个稍微复杂的接口驱动电路,如UART、VGA、PS2;设计并实现一个具有一定功能的完整数字系统4、课程学习其他在数字系统设计的学习过程中,HDL语言只是一个开发工具,并不是的重点跟目的,然而为了掌握EDA的设计方法,必须掌握好至少一门硬件语言。学习的初期或许比较枯燥,可以多了解学完这门课程后可以做哪些实际的数字系统设计,或者接触一些EDA最前沿的应用与发展趋势,有助于激发学习兴趣。学习过程可参照www.altera.com.cn上的例程,也可以看看官方网站上的技术文档,学习EDA的同时了解其最新技术动向,又锻炼英文,一举三得。学习资料不在多,贵在能坚持把获得的学习资料消化并实践,否则网上下再多的资料也没有意义。4、课程学习资源接口使用演示 往届优秀课程设计作品展示4.4 实验配套开发板介绍常见术语CADEDAHDLVHDLASICPLDPLARTL
献花(0)
+1
(本文系籽油荃面原创)