数字电路与逻辑设计 课件 11-数字系统设计-滤波器设计_第1页
数字电路与逻辑设计 课件 11-数字系统设计-滤波器设计_第2页
数字电路与逻辑设计 课件 11-数字系统设计-滤波器设计_第3页
数字电路与逻辑设计 课件 11-数字系统设计-滤波器设计_第4页
数字电路与逻辑设计 课件 11-数字系统设计-滤波器设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字系统设计 1

片上微控制系统原理与项目设计第十一讲授课内容数字系统设计处理数字滤波器控制微处理器设计电路,计算N!数字系统设计核心是自顶向下的设计思想和模块化的设计方法:(1)模块划分,即系统应该被划分为几个模块;(2)模块互联,即各个模块间的连接接口如何规划;(3)模块通信,即各个模块之间的数据如何交互。(1)试凑法把系统的总体方案分成若干个相对独立的功能部件,然后用组合逻辑电路和时序逻辑电路的设计方法分别设计并构成这些功能部件,最后把这些已经确定的部件按要求拼接组合起来,便构成完整的数字系统。(2)自上而下法把较大规模的数字系统从逻辑上划分为控制器和受控制器电路两大部分,采用逻辑流程图或其他工具来描述控制器的控制过程,并根据控制器及受控制器的逻辑功能,选择适当功能器件来实现。某简单的小型数字系统的功能要求如下:有4×4矩阵数字键盘和一行5个数码管。每个按键上标有一位十六进制数符,十六个按键标注不同值。每按一次键,相应的十六进制数符就显示在最右边的数码管上,以前显示的数符都向左移一个数码管。需求可以分解为三个基本子功能部分:数码管的动态显示矩阵键盘的按键检测数据移位保存数据处理基本模块输入输出逻辑结构功能描述真值表硬件描述波形图电路内部结构加工流程流程描述处理流程图流程变形按照模块功能改变流程图流程结构根据流程图用模块构建获取加工显示数据处理运算流控算术逻辑比较编码译码变换选择分配保存寄存存储运算模块算术运算

ABF逻辑运算

AF

比较运算

ABSA>BSA=BSA<B双目运算单目运算变换模块编码

I0IN-1译码D……

Y0YN-1D……M<<N压缩去压缩N维稀疏空间M维稠密空间N维稀疏空间第几种情况流控模块选择

D0DN-1分配YC……

Y0YN-1D……选来源选去处Cif(C==0)Y=D0;elseif(C==1)Y=D1;elseif()

⁝elseY=DN-1;if(C==0){Y0=D;Y1=×;…;YN-1=×;}elseif(C==1)){Y0=×;Y1=D;…;YN-1=×;}elseif()

⁝else{Y0=×;Y1=×;…;YN-1=D;}保存模块寄存

D存储Q

A0AN-1WR……不触发时保持原值存数据CPD0DM-1…RD取数据地址线入数据线写使能读使能…读写同时读写分时一组数据大量数据s=f(s,…);x[k]=;=f(x[k],…)A0AN-1WR……DI0DIM-1…RD…DO0DOM-1……出数据线双向数据线读写同时流程分析

ABFABFABF123N…si=2s=1i>Ns=s+ii=i+1假初始化

ΣΣΣ保存i保存s比较循环体节奏时钟触发真流程变形

i=2s=1i>Ns=s+ii=i+1假i=2s=1i>Ns=s+ii=i+1真s=si=i假条件不成立时,s和i值保持原值真要做的操作一直存在,只是是否使用流程变形

初始化与循环时,s和i值赋值不同i=2s=1i>Ns=s+ii=i+1真s=si=i假s=1i=2i>Ns=s+ii=i+1假s=si=i真初始否真假不同条件下选择不同结果所有操作都在流程逻辑结构s=1i=2i>Ns=s+ii=i+1假s=si=i真初始否假真

初始控制节奏控制输入参数DQCPABΣF1iDQCPsD0D1YCABΣFD0D1YCABSA<BND1D0YCD1D0YC21CPR流程逻辑结构DQCPABΣF1iDQCPsD0D1YCABΣFD0D1YCABSA<BND1D0YCD1D0YC21CPRds=1di=2i>Nds=s+idi=i+1s=dsi=di假ds=sdi=i真初始否假真

dsdi组合逻辑记忆时序逻辑数字系统RTL设计方法1、系统状态转移图描述。(与普通的状态转移图相比,转移条件不仅仅是某些输入输出比特)2、设计数据通路3、将数据通路与一个控制器相连4、将系统状态转移图描述转换为模块状态转移图。(把操作换成控制信号的输出。)(2)自上而下法把较大规模的数字系统从逻辑上划分为控制器和受控制器电路两大部分,采用逻辑流程图或其他工具来描述控制器的控制过程,并根据控制器及受控制器的逻辑功能,选择适当功能器件来实现。【例】饮料贩卖机。输入硬币,c检测信号,是否有硬币投入。a为投入钱币面值信息:1元面值。每瓶饮料的价格s为2元,得控制输出,控制饮料掉落。①系统状态图定义变量tot,累计现有钱数•初始化状态:设置d=0,tot=0•等待状态:等待硬币 –如果看到硬币,请转到添加状态•添加状态:更新总值:tot=tot

+a –存储当前硬币的价值,返回等待状态 –在等待状态下,如果tot>=s,请转到分配•分配状态:设置d=1(分配饮料) –返回初始化状态多位(数据)输入a和s本地注册数据操作tot=0,tot<s,tot=tot+a。

设计数据通路需要寄存器tot需要8位比较器比较S和TOT需要8位加法器执行tot=tot+a连接各模快控制输入/输出,定义信号名称

将数据通路与一个控制器相连控制器的输入 –外部输入c

(检测到硬币) –来自数据路径的输入

比较器输出,命名的tot_lt_s•控制器输出 –外部输出d(分配饮料) –控制输出tot_ld,tot_clr

转换为模块状态转移图

状态和转移不变

读写控制单元信号【例】基于激光的距离测量仪输入输出:B控制开关L激活激光S激光接收器D16比特距离数据创建初始状态,将其命名为S0–将激光初始化为关闭(L=0)–将显示的距离初始化为0(D=0)添加另一个状态,称为S1,等待按钮按下–B'–留在S1,继续等待–B–转到新状态S2问:S2应该做什幺?答:打开激光添加打开激光的状态S2(L=1)在状态S3中关闭激光(L=0)问:下一步做什幺?答:启动定时器,等待反射检测到反射(S)后,进入新状态S4–计算距离–假设时钟频率为3x108,DCTR保存米数,因此D=DCTR/2•S4之后,返回S1再次等待按钮2、设计数据通路数据通路数据存储数据计算看系统状态机,三个子步骤(a)使数据输入/输出成为数据路径输入/输出(b)将声明的寄存器实例化到数据路径(同时为每个实例化一个寄存器数据输出)(c)审查每一种状态和转移,以及实例化数据路径模块和用于实现任何数据的计算【例】总线接口–主处理器可以读取任何外设寄存器 •每个寄存器都有唯一的4位地址 •假设1个寄存器/外设。–设置rd=1,A=地址–在32位D线上寄存器数据 •硬件地址Faddr输入(可能来自DIP开关或他寄存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论