版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
存储库谭志虎存储库主要组件D触发器、T触发器JK触发器、SR触发器寄存器计数器移位寄存器随机数生成器RAMROM触发器组件功能:各类触发器,1位寄存器Regisiter功能:多个D触发器构成的寄存器计数器Counter功能:正向或反向计数器属性:计数器位宽,最大值,溢出处理模式CountLoad功能1或x0或x正向计数1或x1反向计数CountLoad功能01从D端载入00或x计数值不变移位寄存器ROM功能:只读存储器RAM功能:可写随机存储器双向输入输出同步模式输入输出分离同步模式谭志虎下节课再见…stan@逻辑门库、复用器库谭志虎逻辑门库主要组件非门缓冲器与、或、与非、或非异或、异或非奇校验偶校验三态门三态非门三态门、三态非门功能:控制开关,用于总线传输方向控制复用器库主要组件多路选择器解复用器译码器优先编码器多路选择器MUX功能:多输入选择器选择端位宽为n,则输入源的数目为2n不恰当的级联用多路选择器代替逻辑电路MUX输出级联另一MUX选择端解复用器DMX功能:多输出选择器解码器Decoder功能:译码器,用于地址译码优先编码器PriorityEncoder功能:获得输入信号的编码谭志虎下节课再见…stan@输入输出库谭志虎输入输出库主要组件按钮游戏杆键盘LED指示灯7段数码管16进制显示数码管LED矩阵哑终端键盘、哑终端7段数码管16进制显示数码管LED矩阵功能:LED点阵矩阵谭志虎下节课再见…stan@Logisim线路库谭志虎线路库主要组件分线器引脚探针隧道上下拉电阻时钟常量、电源、接地位扩展器组件通用属性#属性功能描述快捷键1朝向组件在画布放置的方向光标键2数据位宽引脚对应的数据宽度alt+数字3引脚数逻辑门电路输入引脚数数字键4外观可以调整组件外观属性
5尺寸逻辑门电路可以设置组件的尺寸大小
6标签与组件相关联的标签文字,用于注释
7标签位置标签在组件上的显示位置
8标签字体组件标签文字的字体分线器splitter功能:将多位宽线路中的某些位分离出来,反之亦然属性朝向输出fanout位宽外观位x功能器件方向分线端端口数汇聚端位宽外观选择汇聚端第x位映射至分线端端口号汇聚端分线端左手式右手式中心式旧式取最高位分线器splitter实例012012引脚布局引脚Pin功能:子电路输入输出接口
属性朝向输出数据位宽三态未定义处理功能器件方向输入/输出引脚数据位宽输入引脚是否有三态值未连接时的默认值不变/上拉/下拉子电路封装探针Probe功能:动态监测线路值方便调试,在日志中记录探针,需设置标签隧道Tunnel功能:远程线路连接,类似PCB板过孔标签名应该尽量精简、准确表义不可不用,不可滥用最糟糕的情况好的例子上/下拉电阻Pull
Resistor功能:处理线路中的悬浮态、不确定值无位宽属性时钟、常量、接地、电源时钟:提供时钟源ctrl+t,ctrl+k常量:电源、接地位扩展器功能:数据位宽扩展或截断属性:输入位宽,输出位宽,扩展方式41谭志虎下节课再见…stan@Logisim新手实验-1谭志虎实验目的Logisim快速入门熟悉Logisim基本功能,常用操作熟悉Logisim基本组件库掌握Logisim自动生成电路的方法实验基础组合逻辑电路设计基本概念实验任务绘制LED计数电路构建一个数据编码器设计7段数码管显示驱动电路
EXCEL真值表自动生成表达式实验1:第一个电路LED计数电路按图绘制电路熟悉I/O引脚给出引脚具体标签尝试快捷键方向键、ALT+数字熟悉引脚所有属性熟悉逻辑门熟悉逻辑门所有属性尝试快捷键方向键、数字键、ALT+数字功能测试
Logisim.circ封装子电路修改默认封装调整矩形边框调整引脚位置增加引脚说明快捷键使用ctrlshift+鼠标拖拽系统默认封装自定义封装子电路功能测试按图绘制电路按钮,LED指示灯LED计数子电路功能测试谭志虎下节课再见…stan@Logisim新手实验-2谭志虎实验2:5输入按键编码器设计
输入:5个不同编号的按键输出:3位按键编号值设计方法:真值表
表达式
自动生成电路优先编码器LED计数编码器EXCEL真值表自动生成逻辑表达式输入可填写无关项x
(输入不填为无关项,各行不得有二义性)自动生成逻辑表达式大大简化了真值表12自动生成电路3534子电路封装编码器组合逻辑设计流程填EXCEL真值表自动生成表达式输入表达式自动生成电路表达式化简功能测试
5输入编码电路测试修改LED计数测试电路增加编码器增加分线器增加探针增加接地增加电源功能测试实验3:7段数码管显示驱动12345678输入:4位二进制输出:7段显示管7个输出控制信号功能:利用7段数码管显示4位二进制的16进制值设计方法:真值表
自动生成电路数码管驱动7段数码管显示驱动构建输入输出填写真值表自动生成电路数码管驱动自动测试Ctrl+T时钟单步,Ctrl+k时钟自动运行,开启自动测试集成到LED计数测试电路谭志虎下节课再见…stan@运算器库谭志虎运算器库主要组件加法器、减法器乘法器、除法器求补器比较器移位器加法器功能:带进位信号加法器减法器功能:带借位信号减法器乘法器功能:无符号乘法器除法器功能:无符号除法器求补器功能:输入x,求-x的补码比较器功能:比较两数的大小无符号比较有符号比较移位器Shifter功能:移位运算器谭志虎下节课再见…stan@课程导学谭志虎课程定位硬件课程贯通实验方案---从逻辑门到流水CPU数字逻辑计算机组成原理计算机组织与结构计算机系统结构逻辑与计算机系统设计基础课程实验特色无需硬件即可实验原理图方式构建硬件电路实验平台简单易学,无需先导课程原创性、挑战度、趣味性课程内容CPU设计数字逻辑组成原理系统结构新手上路组合逻辑同步时序数字系统运算单元存储系统MIPS编程校验编码I/O控制理想流水流水CPU中断异常分支预测Logisim挑战性任务数字逻辑计算机组成原理计算机系统结构硬件看淡,不服就干数字逻辑部分构建小型数字系统---运动码表组合逻辑电路设计同步时序电路设计寄存器数据传输组成原理部分构建MIPS单周期,多周期CPU运算器存储器控制器系统结构部分构建能处理各类冲突的MIPS流水CPU资源相关、分支相关、数据相关中断异常、动态分支预测丰富的原创虚拟仿真实验RAID控制器实验Cache硬件设计纠错码流水传输硬件实验自动评测工具自动测试故障定位自动评分激发学习兴趣破解实验困局实践是内容最丰厚的教科书实践是能力培养最好的课堂做中学、玩中学谭志虎下节课再见…stan@Educoder翻转课堂谭志虎Educoder翻转课堂基本流程注册登录创建课堂教师选用教学资源自主开发教学资源学生在线完成实训查看报告导出成绩发布作业任务邀请学生/EduCoder快速创建翻转课堂演示课程名课堂名称学时学分模块配置谭志虎下节课再见…stan@Educoder在线测试谭志虎Educoder平台学习模式在线答疑互动在线教程讲解在线评测在线开发在线运行故障定位集在线学习、实验、训练、评测、结果展现于一体的实训平台实验任务牵引educoder实验自动评测原理实际输出输出期望差异信息通关提示待测电路比较标准输入自动测试电路测试集标准输入测试集输出期望实际输出差异信息通关提示待测程序比较实训项目实践课程教学课堂
代码区域实验文档说明区域测评信息显示区域
代码区域实验文档说明区域注意实际输出信息量太大平台不支持采用折中的方法,仅显示错误测试用例(翻车现场)实际输出栏显示信息:时钟节拍,输出期望,实际输出预期输出栏显示信息:所有输出引脚标题栏谭志虎下节课再见…stan@Logisim平台谭志虎实践是内容最丰厚的教科书实践是能力培养最好的课堂做中学做中教玩中学计算机专业硬件实验方式传统分离元件连线实验轻设计,调试难,指导难,验收难,成本高,场地大FPGA开发板模式重设计,调试难,指导更难,验收简单,抄袭易,场地小学习周期长,需重构课程教学体系Logisim虚拟仿真实验重设计,调试易,指导易,验收易,零成本,难抄袭,场地不限设计与实现分开先在Logisim平台设计仿真实验台或FPGA开发板实现Logisim平台用于数字电路开发、CPU设计的仿真软件仿真直观,调试简单易学易用-1小时上手与Multisim/Proteus的区别无实体器件JAVA程序,跨平台,开源WIN,MAC,Linux目前已停更,github上衍生出若干版本高分辨率支持,surface等JDK11版本有BUG,但完全可用,重启即可大范围元件移动Logisim应用适合数字逻辑、计算机组成、系统结构课程实验BerkeleyCS61CGreatIdeasinComputerArchitectureCornellCS3410ComputerSystemOrganizationandProgrammingDukeECE250DComputerArchitectureTAMUCSCE312ComputerOrganization/~cs61c/fa18//courses/cs3410/2018fa//~tkb13/courses/ece250-2018su/Logisim实验特色采用原理图方式进行设计支持子电路封装,易于构建复杂数字电路系统(CPU)延续了数字逻辑课程中数字电路设计方法有利于培养学生硬件设计思维回避了硬件描述语言过于抽象、硬件设计程序化的问题。简单易学,易于调试、零实验成本,无场地和人员要求谭志虎下节课再见…stan@同步时序逻辑设计谭志虎同步时序逻辑电路概述同步时序电路特征由组合逻辑和存储单元构成电路存在反馈公共时钟进行同步同步时序逻辑设计流程构建状态图构建状态转换逻辑构建输出函数逻辑实现电路现态次态输入输出现态组合逻辑CLK存储单元现态次态输入输出现态输出函数组合逻辑状态转换组合逻辑CLK现态存储单元输入状态转换逻辑设计填写EXCEL真值表(输入不填为无关项,各行不得有二义性)根据功能需求填写状态转换表自动生成状态转换电路逻辑表达式(触发器输入函数)输出函数组合逻辑设计填写EXCEL真值表(输入不填为无关项,各行不得有二义性)根据功能需求填写输出函数真值表自动生成输出函数逻辑表达式实验终极目标构建小型数字系统:运动码表组合逻辑电路设计同步时序电路设计寄存器数据传输Start:计时器归零,重新开始计时Stop:停止计时,显示计时数据Store:尝试更新系统记录,并显示系统记录Reset:复位,计时=00.00,系统记录=99.994位计数模块记录存储模块数字系统总控模块同步时序逻辑设计实验目标帮助学生理解同步时序逻辑设计基本流程熟练利用Logisim构建数字码表中时序逻辑部分实验任务构建16位寄存器(存储历史记录数据)设计4位正向时间计数器实现码表计数器实验电路Logisim.circ16位并行加载寄存器4位并行加载寄存器4位BCD计数器BCD计数器状态转换逻辑码表计数器码表计数器自动测试实验1:16位并行加载寄存器输入:16位输入Din,使能信号En,输出:16位输出Q功能:Q<=Din约束:由4位寄存器模块构成4位并行加载寄存器设计输入:4位输入Din,使能信号En,输出:4位输出Q功能:Q<=Din约束:使用D触发器构成实验2:4位BCD计数器输入:时钟信号,使能信号En,异步复位Rst输出:4位输出Q,进位输出信号Cout功能:Q<=(Q==9)?0:Q+1;Cout=(Q==9)?1:0;现态次态输入输出现态输出函数组合逻辑状态转换组合逻辑CLK现态存储单元输入同步时序逻辑4状态位,4个D触发器输出就是状态位重点考虑状态转换逻辑实验3:码表计数器输入:时钟信号Clk,使能En,异步复位Rst输出:16位输出Q功能:包含4个BCD码计数器低位计数器从9到0时,高位计数器加1
设计约束:利用BCD计数器级联而成谭志虎下节课再见…stan@运动码表设计谭志虎数字系统特征结构复杂,组件众多寄存器、计数器、译码器、多路选择器、总线、运算器、触发器,逻辑门电路数据通路(执行部件)和控制单元状态复杂,很难用状态转换表来表示设计方法:模块化、层次化控制信号控制输入数据输出控制单元CLK状态信号数据输入数据通路控制输出数据通路抽象模型(寄存器传输)组合逻辑FuncAENBENCLKRegAoutRegBinRegAinRegBoutFunc(A)BMEMARDRCLKARoutDRin访存通路总线ABCLKAoutBin总线传输组合逻辑FuncAENBENCLKRegBinRegAoutABCCLKCinALU运算通路AoutBout数字系统设计流程设计需求分析外部数据,控制输入,数据、控制、状态输出设计功能部件得到内部控制信号,状态信号构建数据通路从数据流角度连接所有功能部件构建控制单元绘制系统状态图构建状态转换电路构建输出函数电路(生成所有内部,外部控制信号,状态输出)构建控制单元系统集成联调从控制流角度连接控制单元和执行部件(数据通路)1、码表功能需求分析输入:4个按钮输出:4个7段数码管Start:计时器归零,重新开始计时Stop:停止计时,显示计时数据Store:尝试更新系统记录,并显示系统记录Reset:复位,计时=00.00,系统记录=99.992、码表功能部件设计#功能部件控制信号输入输出1时间计数器TMTM-En,TM-RstCLK时间计数输出16位216位寄存器SDSD-EnCLK,Din(16位)Q(16位)3数码管显示DPDin(16位)DisplayInfo(32位)4比较器52路选择器Sel3、码表数据通路构建构建功能部件输入来源表#功能部件数据输入数据来源备注1时间计数器TM216位寄存器SDDin(16位)99.99或当前记录增加2路选择器SD-Sel3数码管显示DPDin(16位)TM.Q
或SD.Q增加2路选择器DP-Sel4比较器X,Y(16位)当前计时&SD.QNewRecord有多个输入来源的增设多路选择器按数据流连接数据通路4、构建控制单元外部控制输入信号Start,Stop,Reset,Store定义内部、外部控制信号、内部状态信号、状态输出TM-EN,TM-RST,SD-EN,SD-SEL,DP-SEL,NewRecord根据功能需求构建状态图填写状态转换表Excel表填写输出函数真值表Excel表生成状态转换逻辑表达式生成输出函数逻辑表达式构建控制单元内部逻辑5、码表系统集成联调按控制流连接控制单元与数据通路功能测试谭志虎下节课再见…stan@组合逻辑电路设计谭志虎组合逻辑电路概述组合逻辑电路特征输出是输入的逻辑函数内部由基本逻辑门电路组成单向电路,无反馈时间延迟(最短路径,关键路径)竞争与险象组合逻辑设计流程真值表,卡诺图,逻辑表达式关键是根据设计需求求解逻辑表达式复杂逻辑可以采用模块分层或迭代法设计组合逻辑输出输入实验终极目标构建小型数字系统:运动码表组合逻辑电路设计同步时序电路设计寄存器数据传输Start:计时器归零,重新开始计时Stop:停止计时,显示计时数据Store:尝试更新系统记录,并显示系统记录Reset:复位,计时=00.00,系统记录=99.99组合逻辑设计实验目标理解组合逻辑设计基本流程理解模块分层、迭代的设计思想熟练利用Logisim构建运动码表功能部件实验任务2路选择器设计(16位)16位无符号比较器设计码表数码管显示驱动设计2路选择器比较器数码管显示驱动实验电路Logisim.circ2路选择器(16位)2路选择器(1位
)2路选择器自动测试4位无符号比较器16位无符号比较器16位无符号比较器自动测试码表显示驱动实验1:2路选择器设计(16位)输入:16位输入X,Y;选择控制信号Sel输出:16位输出Out功能:Out=(Sel==0)?X:Y;约束:只能使用线路库,逻辑门组件,输入输出库模块化设计,先构建1位的2路选择器,再并发16位2路选择器设计(1位)输入:1位输入X,Y;选择控制信号Sel输出:1输出Out功能:Out=(Sel==0)?X:Y;约束:只能使用线路库,逻辑门组件,输入输出库2路选择器自动测试Ctrl+K自动测试实验2:16位无符号比较器输入:16位输入X,Y;输出:大于(1位),等于(1位),小于(1位)功能:无符号比较约束:只能使用线路库,逻辑门组件,输入输出库4位无符号比较器输入:4位输入X,Y;输出:大于(1位),等于(1位),小于(1位)功能:无符号比较约束:只能使用线路库,逻辑门组件,输入输出库利用4位无符号比较器构建16位无符号比较器比较器自动测试Ctrl+K自动测试实验3:码表数码管驱动输入:16位BCD码输出:4个7段数码管的控制信号(32位)S4T,S4B,S3T,S3BS2T,S2B,S1T,S1B谭志虎下节课再见…stan@CRC校验码编解码实验谭志虎CRC校验基本原理CRC编码电路0…0余数aka2a1…aka2a1…...b1brCRC校验码原始数据编码发送方aka2…CRC校验码原始数据解码接收方...g0g1grCRC解码电路...s1sr生成多项式不可靠传输决策逻辑接收拒绝余数ckc2c1…...d1drr个零a1CRC串行编码电路(时序逻辑)有异或门的位置是生成多项式为1的位置,G(X)=X4+X+110011触发器初始状态为0Q4=0时,不够除,下一个时钟,数据左移一位Q4=1时,够除,商上1,Q4Q3Q2Q1Serial_in⊕生成多项式结果左移运算速度慢,高速设备普遍采用并行CRC编解码11001D4D3D2D1实验目的掌握CRC校验码的基本原理,理解其检错、纠错性能能看懂串行CRC编解码电路能设计实现16位原始数据的并行CRC编解码电路假设无三位错,解码电路能够检测一位错以及两位错编码解码CRC并行编解码思路(7,4)CRC编码,生成多项式G(x)=1011,原始数据M(x)=1101,求CRC编码
1101000
=
1000000
⊕0100000⊕0001000
1101011
=
1000000
⊕0100000⊕0001000
⊕0000011先算26、25、24、23四个常量的余数,再用余数的组合求解任意编码的余数模2除法余数运算满足结合律:两数的余数异或等于两数异或后的余数实验步骤任务:实现16位原始数据的CRC编码,假定没有三位错,能纠正一位错步骤1:选择生成多项式不是任意的表达式都可以做生成多项式,见教材中表格构成的编码体系能否区分一位错,两位错,如不能,如何解决?步骤2:利用余数循环特点求解16个特殊常量的CRC余数000000000000000100000
的CRC余数R1000000000000001000000
的CRC余数R2
,R1左移一位除生成多项式得到R2000000000000010000000
的CRC余数R3,R2左移一位除生成多项式得到R3以此类推直至R1~R16全部求解完毕步骤3:根据R1~R16构建并行编解码电路纯组合逻辑,根据待编码每一位的值决定选择是否选择对应的余数是否参与运算步骤4:系统测试实验电路data.circCRC编解码电路自动测试电路CRC编解码电路输入输出引脚规范编码电路解码电路CRC编解码传输测试2时钟频率8Hz,Ctrl+k,Command+k自动测试,提交检查CRC编码传输动态演示效果谭志虎下节课再见…stan@编码流水传输实验谭志虎五段流水线模拟Data.circ
流水模拟子电路流水线=寄存器+组合逻辑+寄存器+组合逻辑+寄存器…同步清零数据输入使能端数据输出时钟常见流水线:乘法流水线,浮点流水线,指令流水线实验目的熟悉流水同步传输机制,理解流水清空、暂停原理在编码流水传输框架增加两位错重传功能为后续指令流水线进行技术积累实验电路data.circ海明编码流水传输CRC编码流水传输流水模拟编码流水传输实验---无重传机制正常传输编码流水传输实验---无重传机制两位错华中华科中华技科中华大技科中华编码流水传输五段流水传输:取数、编码、传输、解码、显示发生1位错:校验码自动纠错,流水线正常发生两位错:无法纠错,显示阶段数据紊乱学大技科中增加重传机制两位错重传机制(保证接收端接收顺序和ROM中一致)发送端地址回滚类似指令流水线分支处理的分支跳转清空前段数据(气泡逻辑)类似指令流水线分支处理的清空误取指令暂停显示阶段的动作(Stall信号控制)类似指令流水线数据相关处理的流水线暂停
技科中华华编码流水传输实验---二位错重传时钟频率8Hz,Ctrl+k,Command+k自动测试,提交检查谭志虎下节课再见…stan@海明校验码编解码实验谭志虎实验目的与任务掌握海明编码的设计原理,理解其检错纠错性能设计包含16位原始数据(汉字机内码)的海明编码实现包含16位原始数据位的海明校验码编解码电路假设无三位错,解码电路能够检测一位错以及两位错可检一位错的海明校验码分组交叉奇偶校验法海明码N位,数据位k位,校验位r位N=k+r共r个偶校验组,每组一个偶校验位,生成r位检错码检错码的值表示出错位置全部检错码为0,
数据大概率正常2r-1≥N=k+rk=16,r=?每一数据位至少参加2个校验组一位出错,可引起多个检错码的变化2位错,检错码的值有何意义?RichardWesleyHamming步骤1:构建海明编码校验分组完成(16,r)海明编码的校验分组设计检错码为Gr….G4G3G2G1根据海明编码规则填写海明校验组分布表,得到各校验位逻辑表达式为区分一位错和两位错,需要额外引入总偶校验位P
H1H2H3H4H5H6H7H8H9H10H11H12H13H14H15H16H17H18H19H20H21检错码000010001000011001000010100110001110100001001010100101101100011010111001111100001000110010100111010010101对应位
G1组
G2组
G3组
G4组
G5组
P1√P2√P3√P4√D2√√D1√√D3√√D4√√√D5√√D6√√D7√√√P5√P1=D1⊕D2⊕D4⊕D5⊕D7
⊕…步骤2:海明编码电路实现在海明编码子电路中实现对应的逻辑data.circ输入:16位原始数据输出:22位海明编码请勿增改删引脚及子电路封装,使用隧道标签实现相应逻辑注意异或门的行为属性,缺省是错的步骤3:海明解码电路实现在海明解码子电路中实现对应的逻辑输入:22位海明编码输出:无错误标识、1位错标识、2位错标识,纠错后的数据(16位)请勿增改删引脚及子电路封装,使用隧道标签实现相应逻辑步骤4:海明编码汉字传输测试(海明传输测试2)时钟频率8Hz,Ctrl+k,Command+k自动测试,提交检查海明编码传输动态演示效果谭志虎下节课再见…stan@汉字编码实验谭志虎实验目的理解汉字机内码能通过工具批量获取一段汉字的机内码理解汉字区位码利用简单电路实现汉字机内码与区位码的转换理解汉字字形码能在实验环境中实现汉字机内码的点阵显示
汉字表示法机内码:计算机内存储字符时使用的编码区位码:4位10进制94*94矩阵(行---区,列---位,编号从1开始)GB2312汉字机内码=区位码+0xA0A0字形码:输出汉字点阵的信息编码点阵信息量大,所占存储空间大用来构成汉字字库,不能用于机内存储文字类别标准占位有效位MSB英文字符ASCII单字节70汉字字符GB2312双字节141实验任务(data.circ
汉字显示子电路)工具批量获取GB2312机内码16位机内码14位区位码32*32位字形码将班级+姓名+学号+一段自选文字
在电路中自动显示实验电路data.circ国标转区位码汉字显示子电路步骤1、实现国标转区位码子电路将16位GB2312机内码转换为区位码区号、位号各7位引脚、子电路外观勿增删改,使用隧道标签构建电路禁止使用Logisim中的减法器步骤2、获取汉字GB2312机内码利用Windows记事本输入一段汉字,另存为…如何获取机内码?自制工具?现有工具?步骤3、汉字编码显示自动测试时钟频率8Hz,Ctrl+k,Command+k自动测试,提交检查2、转换电路已完成存放刚获得的汉字机内码谭志虎下节课再见…stan@运算器实验框架谭志虎运算器实验内容快速加法器8位可控加减法器设计4位可级联先行进位电路设计4位快速加法器设计16位快速加法器32位快速加法器乘法器5位阵列乘法器6位补码阵列乘法器五位乘法流水线原码一位乘法器(较难)补码一位乘法器(较难)算术逻辑运算单元alu.circ谭志虎下节课再见…stan@快速加法器设计实验谭志虎实验目的验证串行加法器逻辑实现能设计8位可控加减法电路掌握快速加法器逻辑实现能设计4位先行进位电路能设计4位快速加法器理解组内先行,组间先行的基本原理利用4位快速加法器构建16位,32位快速加法器能分析相关电路延迟1、8位可控加减法器设计alu.circ2、4位先行进位电路设计3、4位快速加法器设计4、16位快速加法器设计组内先行,组件先行5、32位快速加法器设计谭志虎下节课再见…stan@32位ALU设计实验谭志虎实验目的掌握定点数加减法溢出检测方法理解算术逻辑运算单元ALU的基本构成熟悉Logisim中各种运算组件逻辑运算部件算术运算组件熟悉多路选择器的使用设计32位简单ALU利用已完成的32位加法器、其他运算组件构造禁止使用Logisim中内置的加法器,减法器32位算术逻辑运算单元ALU引脚输入/输出位宽功能描述X输入32操作数XY输入32操作数YS输入4运算操作码ALU_OPR输出32ALU运算结果R2输出32ALU结果第二部分,用于乘法运算结果高位或除法运算的余数位,其它运算时值为零OF输出1有符号加减运算溢出标记,其他运算为0UOF输出1无符号加减运算溢出标记,其它运算为0Equal输出1Equal=(x==y)?1:0,对所有运算均有效运算操作码ALU_OPALU_OP十进制运算功能00000R=X<<Y逻辑左移(Y取低五位)R2=000011R=X>>Y算术右移(Y取低五位)R2=000102R=X>>Y逻辑右移(Y取低五位)R2=000113R=(X*Y)[31:0]R2=(X*Y)[63:32]
无符号乘法01004R=X/YR2=X%Y无符号除法01015R=X+Y(SetOF/UOF)01106R=X-Y(SetOF/UOF)01117R=X&Y按位与10008R=X|Y按位或10019R=X⊕Y按位异或101010R=~(X|Y)按位或非101111R=(X<Y)?1:0有符号比较110012R=(X<Y)?1:0无符号比较32位ALU电路框架ALU自动测试电路自动测试自动评分故障定位自动测试结果谭志虎下节课再见…stan@阵列乘法器原理谭志虎二进制手工乘法运算X3Y1X2Y1X1Y1X0Y1X4Y1X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p8p7p6p5p4p3p2p1p0
p9p8p7p6p5p4p3p2p1p0X4X3X2X1X0
×Y4Y3Y2Y1Y0先计算相加数,然后逐列相加p9一位乘法逻辑实现R=X*Y1×1=11×0=00×1=00×0=0与门实现一位乘法25个与门并发一级门延迟,生成所有相加数横向进位无符号阵列乘法器X3Y1X2Y1X1Y1X0Y1X4Y1X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p3p2p1p0p9+++p7++p8+00+++0p4++++0p5++++0p6+++X3Y1X2Y1X1Y1X0Y1X4Y1斜向进位无符号阵列乘法器X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p1p2+++p0p9p8+p6+++p7+++p3++000+0p4+++p5++++0Pf…补码乘法器bf
bn
1…b1b0阵列乘法器P2n
1P1P0P2P3=1af
an
1…a1a0相加数产生电路(与门阵列)n位求补器n位求补器2n位求补器…绝对值相加数…积绝对值补码乘积谭志虎下节课再见…stan@阵列乘法器性能分析谭志虎横向进位阵列乘法器时延分析X3Y1X2Y1X1Y1X0Y1X4Y1X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p3p2p1p0p9+++p7++p8+00+++0p4++++0p5++++0p6+++横向进位阵列乘法器时延分析X3Y1X2Y1X1Y1X0Y1X4Y1X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p3p2p1p0p9+++p7++p8+00+++0p4++++0p5++++0p6+++1023458769ABn*(n-1)个全加器[n+2(n-2)]*3T+T(3n-4)*3T+T斜向进位阵列乘法器时延分析X3Y2X2Y2X1Y2X0Y2X4Y2X3Y3X2Y3X1Y3X0Y3X4Y3X3Y4X2Y4X1Y4X0Y4X4Y4X4Y0X3Y0X2Y0X1Y0X0Y0p8p7p6p5p4p3p2p1p0p9++++++++++++++++++++X3Y1X2Y1X1Y1X0Y1X4Y100000n*(n-1)个全加器2*(n-1)*3T+T(2n-2)*3T+T12345678小结硬件成本相同:n*(n-1)个全加器,性能差异较大3n:2n横向进位阵列乘法器斜向进位阵列乘法器谭志虎下节课再见…stan@乘法流水线谭志虎工业流水线电气化+流水线二次工业革命复杂问题分解简单而重复汽车生产流水线大规模流水线组装方式将复杂工作分解为简单重复劳动,将待组装的车辆通过流水线的方式流转,大大提升了生产效率,降低了生产成本。得益于计算机及自动化技术的发展,现代汽车工厂中自动控制的机械臂、机器人大量取代工人,将工人从重复而繁重的劳动中解放出来(下岗)。计算机中的流水线流水思想:复杂问题分解成细粒度任务并发乘法流水线,浮点流水线,指令流水线流水
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广东省鹤山市高一数学下册期末考试模拟检测卷【考点梳理】附答案
- 2026年福建省龙海市高一数学下册期末考试模拟检测卷附参考答案【完整版】
- 2026年吉林省大安市高一数学下册期末考试模拟检测卷及完整答案(名师系列)
- 2026年湖北省仙桃市高一数学下册期末考试模拟检测卷A4版附答案
- 广东河源市2026年职业卫生技术服务专业技术人员考试(放射卫生检测与评价)模拟题及答案
- 2026年广东省普宁市高一数学下册期末考试模拟测试卷及参考答案【培优A卷】
- 2026年广东省吴川市高一数学下册期末考试模拟考试卷含完整答案【有一套】
- 2026年湖北省利川市高一数学下册期末考试模拟试卷【培优A卷】附答案
- 河北省沧州市多校联考2025-2026学年高二上学期12月第三次月考生物试题(解析版)
- 河北省2025-2026学年高三上学期12月期中考试生物试题
- 2026年高端私人健康管理会所商业计划书
- 2026-2030建筑垃圾处理行业发展分析及投资战略研究报告
- 矿井巷道维修安全技术措施培训课件
- 2026年高校教师资格证之高等教育心理学考试题库附答案a
- 2026学年七年级道德与法治上册第三单元重点题型过关检测含答案及解析
- 智慧农业前沿技术导论 课件 第14章 智慧植保
- 山东能源集团2026年委培试题
- (2026年)放射性皮肤损伤的护理中华护理团标课件
- 深度解析(2026)《WST 92-1996血中锌原卟啉的血液荧光计测定方法》
- 原发性血小板减少症
- 村卫生所医疗规章制度
评论
0/150
提交评论