搜档网
当前位置:搜档网 › 杭电计组实验5-存储器设计实验资料讲解

杭电计组实验5-存储器设计实验资料讲解

杭电计组实验5-存储器设计实验资料讲解
杭电计组实验5-存储器设计实验资料讲解

杭电计组实验5-存储器设计实验

实验报告

2018 年 5 月 5 日成绩:

#100;

clka = 0;

wea = 1;

addra = 6'b000001;

dina = 32'hFFFF_FFFF;

end

endmodule

二、仿真波形

三、电路图

顶层电路模块

顶层电路内部结构:

四、引脚配置(约束文件)

NET "Clk" LOC = C9;

NET "LED[4]" LOC = M11;

NET "LED[3]" LOC = V15;

NET "LED[2]" LOC = U15;

NET "LED[1]" LOC = V16;

NET "LED[0]" LOC = U16;

NET "Mem_Addr[7]" LOC = U8;

NET "Mem_Addr[6]" LOC = N8;

NET "Mem_Addr[5]" LOC = M8;

NET "Mem_Addr[4]" LOC = V9;

NET "Mem_Addr[2]" LOC = T10;

分子生物学综合实验报告

分子生物学综合试验报告

综合实验Ⅰ.Southern杂交 (质粒DNA提取、PCR技术体外扩增DNA、质粒载体和外源DNA的连接反应、 地高辛标记的Southern杂交) 一.实验目的 1.学习Southern杂交的原理及操作方法。 2.学习碱裂解法提取质粒的原理。 3.学习PCR反应的基本原理和实验技术;了解引物设计的一般要求。 4.掌握DNA体外连接的基本技能,了解连接反应的注意事项。 二.实验原理 利用染色体DNA与质粒DNA的变性与复性的差异而达到分离的目的。在碱变性条件下,染色体DNA的氢键断裂,双螺旋解开而变性,质粒DNA氢键也大部分断裂,双螺旋也有部分解开,但共价闭合环状结构的两条互补链不会完全分离,当pH=的乙酸钠将其pH调到中性时,变性的质粒DNA又恢复到原来的碱裂解法提取质粒的主要原理是:利用染色体DNA与质粒DNA的变性与复性的差异而构型,而染色体DNA不能复性,形成缠绕的致密网状结构,离心后,由于浮力密度不同,染色体DNA与大分子RNA、蛋白质-SDS复合物等一起沉淀下来而被除去。 聚合酶链反应(PCR)是体外酶促合成DNA片段的一种技术,PCR 进行的基本条件:DNA模板(在RT-PCR中模板是RNA)、引物、dNTP (dATP、dTTP、dGTP、dCTP)、Taq DNA聚合酶、反应缓冲体系。 PCR循环由三个步骤组成:变性、退火、延伸。每一个循环的产物可作为下一个循环的模板,通过30个左右循环后,目的片段的扩增可达106倍。

DNA片段之间的连接是通过DNA连接酶的催化实现的。DNA连接酶催化具有平末端或互补粘性末端的DNA片段间相邻碱基通过3’,5’磷酸二酯键连接起来。最常用的来源于T4噬菌体的T4DNA连接酶。对于平末端或互补的粘性末端可直接进行连接反应。一个片段是平末端,另一片段为粘性末端或两个片段都是粘性末端但不配对,则需要通过各种方式使其可一匹配或通过平末端进行连接。通常采用末端补平、加同聚物尾、加接头等方式是目的片段之间能够匹配。 地高辛随机引物法标记的原理:在随机引物法标记的反应液中,有随机合成的六聚核苷酸作为引物,dATP、dCTP、dGTP、dTTP和D1G-11-dUTP作为合成底物,以单链DNA作为模板,在Klenow酶的作用下,合成插入地高辛的DNA链。以地高辛标记的探针与靶基因DNA链杂交后,再通过免疫反应进行检测。一般通过酶标记地高辛抗体检测,就可以肯定杂交反应的存在。免疫检验一般用碱性磷酸酶系统,BClP/NBT显色,敏感性很高。 三.实验准备 1.实验材料: 含质粒的大肠杆菌DH5α,LB液体培养基, LB平板培养基 2.实验试剂: Taq DNA聚合酶,10×反应缓冲液(含25mmol MgCl2),dNTP,引物(P1、P2),溴乙啶 (EB) ,点样缓冲液Loading buffer(10×):%溴酚蓝,40%甘油,目的基因及载体, 2×ligation 缓冲液,T4 DNA连接酶, L CaCl2,氨苄青霉素(100mg/mL), TBE电泳缓冲液(5×), DIG Random Labeling Mix(高效),Anti-DIG-AP Conjugate, BCIP/NBT Stock Solution,Blocking Reagent。 20×SSC:柠檬酸钠,3M NaCl,2×SSC:柠檬酸钠, NaCl, EDTA,变性液: NaOH, NaCl,中和度: Tris-HCl、、3M NaCl,Standard buffer:5×SSC、%(w/v) N-Lauroylsarcosine, % (w/v) SDS, 1% Blocking Reagent,Standard buffer+50% formamide,Anti-DIG-AP 碱性磷酸酶标记抗地高辛单抗体,BCIP/NBT储备液,冲洗液:0. 1M

寄存器组的设计与实现

寄存器组的设计与实现 第______ _________组 成员___ ____ ____ 实验日期___ _____ _____ 实验报告完成日期___________ 1、实验目的 1、学习掌握Quartus软件的基本操作; 2、理解寄存器组的工作原理和过程; 3、设计出寄存机组并对设计的正确性进行验证; 二、实验内容

1、设计出功能完善的寄存器组,并对设计的正确性进行验证。要求如下: (1)用图形方式设计出寄存器组的电路原理图 (2)测试波形时用时序仿真实现,先将不同的数据连续写入 4个寄存器后,再分别读出 (3)将设计文档封装成器件符号。 (4)数据的宽度最好是16位 2、能移位的暂存器实验,具体要求如下: (1)用图形方式设计出能移位的暂存器电路原理图,分别实 现左移、逻辑右移和算术右移。 (2)测试波形时要用时序仿真实现,测试数据不要全为0也 不要全为1,算术右移的测试数据要求为负数(即符号位为 1) (3)将设计文档封装成器件符号。 (4)数据的宽度最好是16位 三、能完善的寄存器组设计思想 1、对于寄存器组设计思路 利用具有三态功能的寄存器堆74670芯片进行设计,根据实验要求,需要设计16位的存储器组,则需要74670芯片4片,在寄存器组工作时,同时对4片74670芯片进行读写操作控制,封装后即可作为包含有4个寄存器的16位寄存器组在主机系统中调用。 2、对74670器件的学习 74670(三态输出4×4寄存器堆)提供4个4位的寄存器,在功能上可对4个寄存器去分别进行写操作和读操作。在寄存器进行写操作时,通过WB、WA两个寄存器选择端的组合和00、01、10、11、来选择寄存器,公国GWN写操作端控制进行三态控制,在GWN为低电平时将数据写入端数据D4D3D2D1写入该寄存器;在寄存

计算机原理与及设计实验报告

计算机原理与设计 实验报告 实验三多周期MIPS CPU的控制部件用有限状态机实现多周期CPU的控制部 件

一.实验目的 1、了解MIPS—CPU控制器的功能和工作原理; 2、掌握用有限状态机技术实现多周期控制器的方法; 3、熟练掌握用Verilog HDL语言设计多周期控制器的方法; 4、熟练掌握对多周期控制器的仿真实验验证和硬件测试两种调试方法; 5、掌握向MIPS-CPU顶层数据通路中增加控制单元的方法,并通过仿真验证和硬件测试两种方法对电路进行故障定位的调试技术。 二.实验内容 (1)MIPS—CPU控制器的有限状态机设计,根据MIPS—CPU 各种类型指令执行要求和有限状态机的设计原理,将多周期控制器的指令执行划分为多个状态,确定每一种指令的有限状态机,最后归纳为完整的多周期控制器有限状态机。通过Verilog HDL语言实现多周期控制器有限状态机。 (2)根据MIPS—CPU控制器的接口要求,在有限状态机的

基础上,用Verilog HDL实现完整的MIPS—CPU控制器的设计,并根据仿真波形,验证设计的正确性,并对出现的故障进行定位,修改程序,重新编译; (3)设计控制器的硬件下载测试方案。将编译通过的电路下载到实验台中。根据硬件调试结果验证设计的正确性,并对出现的故障进行定位,修改程序重新编译;最终完成控制器的硬件电路设计; (4)在MIPS—CPU指令系统的数据通路基础上,增加控制单元电路,并进行编译,仿真波形和调试。根据仿真波形,验证设计的正确性,并对出现的故障进行定位,修改程序,重新编译; (5)对增加了控制单元的顶层数据通路设计硬件下载测试方案。将编译通过的电路下载到实验台中。根据硬件调试结果验证设计的正确性,并对出现的故障进行定位,修改程序,重新编译;最终完成增加了控制单元的顶层数据通路设计。三.实验原理与步骤 1.把指令执行分成多个阶段,每个阶段在一个时钟周期内完成 (1).时钟周期以最复杂阶段所花时间为准 (2).尽量分成大致相等的若干阶段 (3).每个阶段内最多只能完成:1次访存或1次寄存器堆读/写或1次ALU

实验十四 存储器扩展机读写实验

实验十四存储器扩展机读写实验 一、实验目的 (1)通过阅读并测试示例程序,完成程序设计题,熟悉静态RAM的扩展方法。 (2)了解8086/8088与存储器的连接,掌握扩展存储器的读写方法。 二、实验内容 1.实验原理(62256RAM介绍) 62256是32*8的静态存储器,管脚如图所示。其中:A0~A14为地址线,DB0~DB7为数据线,/cs为存储器的片选,/OE为存储器数据输出选通信号,/WE为数据写入存储器信号。62256工作方式如下图。 /CS /WE /OE 方式DB-~DB7 H X X 未选中高阻 L H H 读写禁止高阻 L L H 写IN L H L 读OUT 2.实验内容 设计扩展存储电器的硬件连接图并编制程序,讲字符A~Z循环存入62256扩展RAM 中,让后再检查扩展存储器中的内容。 三、程序设计 编写升序,将4KB扩展存储器交替写入55H和0AAH。 程序如下: RAMADDR EQU 0000H RAMOFF EQU 9000H COUNT EQU 800H CODE SEGMENT ASSUME CS:CODE START: PROC NEAR MOV AX,RAMADDR MOV DS,AX MOV BX,RAMOFF MOV CX,COUNT MOV DL,55h MOV AX ,0AAH REP: MOV [BX],DL INC BX MOV [BX],AX INC BX LOOP REP JMP $ CODE ENDS END START 四、实验结果 通过在软件上调试,运行时能够看到内存地址的改变,证明此扩展的程序成功实现了。 五、实验心得

杭电计组实验报告10

计组实验十 老师:包健 一、源代码测试模块代码: module Top( inputinclk, inputmem_clk, inputrst, outputreg[7:0] LED, input [3:0] SW ); wireclk; MyButtonmb( .clk_100MHz(mem_clk), .BTN(inclk), .BTN_Out(clk) ); wire [31:0] ALU_F; wire [31:0] M_R_Data; wire ZF; wire OF; wire [31:0]PC; My_I_CPUmy_i_cpu( .clk(clk), .mem_clk(mem_clk), .rst(rst), .ALU_F(ALU_F), .M_R_Data(M_R_Data), .ZFF(ZF), .OF(OF), .PC_out(PC) ); always@(*) begin case(SW) 4'd0:LED=ALU_F[7:0]; 4'd1:LED=ALU_F[15:8]; 4'd2:LED=ALU_F[23:16]; 4'd3:LED=ALU_F[31:24]; 4'd4:LED=M_R_Data[7:0];

4'd5:LED=M_R_Data[15:8]; 4'd6:LED=M_R_Data[23:16]; 4'd7:LED=M_R_Data[31:24]; 4'd8:LED={ZF,6'd0,OF}; 4'd12:LED=PC[7:0]; 4'd13:LED=PC[15:8]; 4'd14:LED=PC[23:16]; 4'd15:LED=PC[31:24]; default:LED=8'b0000_0000; endcase end endmodule 顶层模块代码: moduleMy_I_CPU( inputclk, inputmem_clk, inputrst, output [31:0] ALU_F, output [31:0] M_R_Data, output ZFF, output OF, output [31:0]PC_out ); //wire clk_n = ~clk; wire[31:0] codes; wire [31:0]PC_new; reg [31:0]PC; Inst_Fetch1 inst_fetch( .PC(PC), .rst(rst), .clk(clk), .Inst_codes(codes), .PC_new(PC_new) ); wire[5:0] OP; wire[5:0] func;

实验一扩展存储器读写实验

实验一:扩展存储器读写实验 一.实验要求 编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。 二.实验目的 1.学习片外存储器扩展方法。 2.学习数据存储器不同的读写方法。 三.实验电路及连线 将P1.0接至L1。CS256连GND孔。 四.实验说明 1.单片机系统中,对片外存贮器的读写操作是最基本的操作。用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。 用户编程可以参考示例程序和流程框图。本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。读写数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。 用户调试该程序时,可以灵活使用单步、断点和变量观察等方法,来观察程序执行的流程和各中间变量的值。 2.在I状态下执行MEM1程序,对实验机数据进行读写,若L1灯亮说明RAM读

写正常。 3.也可进入LCA51的调试工具菜单中的对话窗口,用监控命令方式读写RAM,在I状态执行SX0000↓ 55,SPACE,屏幕上应显示55,再键入AA,SPACE,屏幕上也应显示AA,以上过程执行效果与编程执行效果完全相同。 注:SX是实验机对外部数据空间读写命令。 4.本例中,62256片选接地时,存储器空间为0000~7FFFH。 五.实验程序框图 实验示例程序流程框图如下: 六.实验源程序: ORG 0000H LJMP START ORG 0040H START:

分子生物学实验设计实验

分子生物学实验 设计实验 题目:在大肠杆菌中表达绿色荧光基因(EGFP ) 学院:生命科学学院 专业:生态学 教师:吴传芳 姓名/学号:余光辉/20 方成/20

一、实验目的 在大肠杆菌中表达绿色荧光蛋白 二、实验流程 三、实验试剂、材料及步骤 (一)质粒DNA的提取 1.原理 碱裂解法是一种应用最为广泛的制备质粒DNA的方法,其基本原理为:当菌 体在NaOH和SDS溶液中裂解时,蛋白质与DNA发生变性,当加入中和液后, 质粒DNA分子能够迅速复性,呈溶解状态,离心时留在上清中;蛋白质与染 色体DNA不变性而呈絮状,离心时可沉淀下来。 经过苯酚、氯仿抽提,RNA酶消化和乙醇沉淀等简单步骤去除残余蛋白质和 RNA,所得纯化的质粒DNA已可满足细菌转化、DNA片段的分离和酶切、常 规亚克隆及探针标记等要求 2.试剂 LB培养液:胰蛋白胨(Tryptone)10g,酵母提取物(Yeast extract)5 g,NaCl 5g, 琼脂(固体培养基)15g,用1N NaOH调pH 7.5。 溶液Ⅰ:50mmol/L 葡萄糖, 10mmol/ EDTA-Na, 25mmol/L Tris-HCl (pH8.0) 溶液Ⅱ:0.4mol/L NaOH , 2% SDS 临用前1:1配制。 溶液Ⅲ:5mol/L 醋酸钾60ml 冰醋酸11.5ml 双蒸水28.5ml 卡那霉素(20mg/mL) 抽提液(饱和酚:氯仿:异戊醇=25:24:1 ) 无水乙醇 70%乙醇 TE缓冲液或ddH2O

3.材料 含质粒pET-28a和pEGFP-N3菌液 1.5ml塑料离心管 EP管架 微量取液器和取液器吸头 常用玻璃器皿 4.实验步骤 (1)将带有质粒pET-28a和pEGFP-N3的大肠杆菌接种在液体培养基中(加氨苄青霉素50μg/mL),37℃培养过夜 (2)取培养菌液1.5mL置Eppendorf小管中,10000rpm×2min,弃上清液 (3)加入100μL溶液I,漩涡器上充分混匀,在室温下放置10 min (4)加入200μL新配制的溶液Ⅱ,轻轻翻转2~3次,使之混匀,冰上放置5 min (5)加入150μL冰冷的溶液Ⅲ,加盖后温和颠倒数次使混匀,产生白色絮状物,冰上放置15 min (6)10000rpm×5 min,取上清液于另一干净的离心管中 (7)向上清液中加入等体积(约400μL)酚/氯仿/异戊醇(25:24:1,v/v),振荡混匀,10000rpm ×10 min,将上清液转移至新的离心管中(8)加入等体积(约370μL)氯仿/异戊醇(24:1),混匀,离心2min ,取上清液于新离心管中 (9)向上清液加入2倍体积无水乙醇,混匀,-200C放置1h (10)12000rpm × 5 min,倒去上清液,把离心管倒扣在吸水纸上,吸干液体 (11)加0.8mL70%乙醇,离心1 min,倒去上清液,真空抽干或室温自然干燥30min (12)加30μL ddH2O ,-200C保存备用 5.注意 (1)饱和酚(取下层)单独吸200μL,氯仿:异戊醇(24:1)吸200μL (2)制备质粒过程中,所有操作必须缓和,不要剧烈振荡(特别是加入溶液II 和III ),以避免机械剪切力对DNA的断裂作用 (二)DNA琼脂糖凝胶电泳检测 1.原理 在质粒提取的过程中,由于操作原因,提取的质粒可能有三种:线性DNA、 开环DNA 、闭环超螺旋DNA 。 当提取的质粒DNA电泳时,同一质粒DNA泳动速度:闭环超螺旋〉线状〉开 环。 但有时也有也会出现相反情况,因为与琼脂糖浓度、电流强度、离子强度及核 酸染料含量有关。 2.试剂 Gold view(DNA染料) 0.5×TBE缓冲液 上样缓冲液(6×) 3.材料 提取的pEGFP-N3和pET-28a ,琼脂糖,锥形瓶,一次性手套,胶铲,封口膜,

杭电计组实验4-寄存器堆设计实验

杭州电子科技大学计算机学院 实验报告 实验项目: 课程名称:计算机组成原理与系统结构设计 姓名: 学号: 同组姓名: 学号 : 实 验 位 置 ( 机 号 ) : 实验日期: 指 导 教 师: 实验 内容 (算 法、 程 序、 步骤 和 方 法) 一、 实验目的 (1 )学会使用Verilog HDL 进行时序电路的设计方法。 (2)掌握灵活应用Verilog HDL 进行各种描述与建模的技巧和方法。 (3 )学习寄存器堆的数据传送与读 /写工作原理,掌握寄存器堆得设计方法。 二、 实验仪器 ISE 工具软件 三、 步骤、方法 (1) 启动Xilinx ISE 软件,选择File->New Project,输入工程名shiyan2,默认选择后,点 击Next 按钮,确认工程信息后点击 Finish 按钮,创建一个完整的工程。 (2) 在工程管理区的任意位置右击,选择 New Source 命令。弹出 New Source Wizard 对 话框, 选择Verilog Module,并输入Verilog 文件名,点击Next 按钮进入下一步, 点击Finish 完成创建。 (3) 编辑程序源代码,然后编译,综合;选择 Synthesize--XST 项中的Check Syntax 右击 选择 Run 命令,并查看RTL 视图;如果编译出错,则需要修改程序代码,直至正确。 (4) 在工程管理区将 View 类型设置成 Simulation ,在任意位置右击,选择 New Source 命 令,选择Verilog Test Fixture 选项。点击Next ,点击Finish ,完成。编写激励代码,观察仿 真波形,如果验证逻辑有误,则修改代码,重新编译,仿真,直至正确。 (5) 由于实验四并未链接实验板,所以后面的链接实验板的步骤此处没有。

实验六移位寄存器的设计

实验六移位寄存器的设计 一、实验目的 1、掌握中规模4位双向移位寄存器逻辑功能及使用方法。 2、熟悉移位寄存器的应用—实现数据的串行、并行转换和构成环形计数器。 二、实验预习要求 1、复习有关寄存器及串行、并行转换器有关内容。 2、查阅CC40194、CC4011及CC4068 逻辑线路。熟悉其逻辑功能及引脚排列。 3、在对CC40194进行送数后,若要使输出端改成另外的数码,是否一定要使寄存器清零? 4、使寄存器清零,除采用R C输入低电平外,可否采用右移或左移的方法?可否使用并行送数法?若可行,如何进行操作? 5、若进行循环左移,图6-4接线应如何改接? 6、画出用两片CC40194构成的七位左移串 /并行转换器线路。 7、画出用两片CC40194构成的七位左移并 /串行转换器线路。 三、实验设备及器件 1、+5V直流电源 2、单次脉冲源 3、逻辑电平开关 4、逻辑电平显示器 5、CC40194×2(74LS194)CC4011(74LS00) CC4068(74LS30) 四、设计方法与参考资料 1、移位寄存器是一个具有移位功能的寄存器,是指寄存器中所存的代码能够在移位脉冲的作用下依次左移或右移。既能左移又能右移的称为双向移位寄存器,只需要改变左、右移的控制信号便可实现双向移位要求。根据移位寄存器存取信息的方式不同分为:串入串出、串入并出、并入串出、并入并出四种形式。 本实验选用的4位双向通用移位寄存器,型号为CC40194或74LS194,两者功能相同,可互换使用,其逻辑符号及引脚排列如图6-1所示。 其中D0、D1、D2、D3为并行输入端;Q0、Q1、Q2、Q3为并行输出端;S R为右移串行输 C为直接无条件清零端; 入端,S L为左移串行输入端;S1、S0为操作模式控制端;R

杭电计组实验1-全加器设计实验

杭电计组实验1-全加器设计实验 杭州电子科技大学计算机学院实验报告实验项目:实验1-全加器设计实验课程名称:计算机组成原理与系统结构课程设计姓名: 学号: 同组姓名: 学号: 实验位置(机号): 自己的笔记本实验日期: 指导教师: 实验内容(算法、程序、步骤和方法)一、实验目的(1),学习ISE工具软件的使用及仿真方法(2)学习FPGA程序的下载方法(3)熟悉Nexys3实验板(4)掌握运用VerilogHDL进行结构描述与建模的技巧和方法(5)掌握二进制全加器的原理和设计方法二、实验仪器ISE工具软件三、步骤、方法(1)启动XilinxISE 软件,选择File-NewProject,输入工程名,默认选择后,点击Next按钮,确认工程信息后点击Finish按钮,创建一个完整的工程。 (2)在工程管理区的任意位置右击,选择NewSource命令。弹出NewSourceWizard对话框,选择VerilogModule,并输入Verilog文件名shiyan1,点击Next按钮进入下一步,点击Finish完成创建。 (3)编辑程序源代码,然后编译,综合;选择Synthesize--XST项中的CheckSyntax右击选择Run命令,并查看RTL视图;如果编译出错,则需要修改程序代码,直至正确。 (4)在工程管理区将View类型设置成Simulation,在任意位置右击,选择NewSource命令,选择VerilogTestFixture选项。输入文件名shiyan1_test,点击Next,点击Finish,完成。编写激励代码,观察仿真波形,如果验证逻辑有误,则修改代码,重新编译,仿真,直至正确。 (5)由于实验一并未链接实验板,所以后面的链接实验板的步骤此处没有。 操作过程及结果一、操作过程实验过程和描述: moduleshiyan1(A,B,C,F,Ci);inputA,B,C;outputF,Ci;wireA,B,C,F,Ci;wi reS1,S2,S3;xorXU1(F,A,B,C),XU2(S1,A,B);andAU1(S2,A,B),AU2(S3,S1,C);or OU1(Ci,S2,S3);endmodule仿真代码 moduleshiyan1_test;//InputsregA;regB;regC;//OutputswireF;wireCi;/ /InstantiatetheUnitUnderTest(UUT)shiyan1uut(.A(A),.B(B),.C(C),.F(F),. Ci(Ci));initialbegin//InitializeInputsA=0;B=0;C=0;//Wait100nsforgloba lresettofinish#100;//AddstimulushereA=0;B=0;C=0;#100A=0;B=0;C=1;#100A =0;B=1;C=0;#100A=0;B=1;C=1;#100A=1;B=0;C=0;#100A=1;B=0;C=1;#100A=1;B= 1;C=0;#100A=1;B=1;C=1;EndRTL图 二、结果 思考题: ((1)根据查看顶层模块RTL的最外层的输入输出接口,和实验指导书式(14.1)所示电路相比,该电路图的输入输出引脚和这个加法器的引脚图式是相符合的。 ((2))尝试使用数据流描述方式现实现

西工大2017年数字集成电路设计实验课实验一

实验四 译码器的设计及延迟估算 1、 设计译码器并估算延迟 设计一个用于16bit 寄存器堆的译码器,每一个寄存器有32bit 的宽度,每个bit 的寄存器单元形成的负载可以等效为3个单位化的晶体管(后面提到负载都为单位化后的负载)。 译码器的结构可参考典型的4-16译码器 译码器和寄存器堆的连接情况(Output 输出为1的一行寄存器被选中) ① 假定4个寄存器地址位的正反8个输入信号,每个信号的输入负载可以等效为10。确定 译码器的级数,并计算相关逻辑努力,以此来确定每一级中晶体管的尺寸(相当于多少个单位化的晶体管)及整个译码电路的延迟(以单位反相器的延迟的本征延迟Tp0为单位)。 解: 96332,10int =?==ext g C C C ,9.696/10F ==? 假定每一级的逻辑努力:G=1,又因为分支努力(每个信号连接8个与非门): 81*8*1B ==, 路径努力8.7686.91=??==GFB H 所以,使用最优锥形系数就可得到最佳的电路级数39.36.3ln 8.76ln 6.3ln ln ===H N ,故N 取3级。 因为逻辑努力:2121G =??=,路径努力:6.15386.92=??==GFB H 则使得路径延时最小的门努力 36.5)6.153(3/1===N H h 。 所以: . 36.5136.5,68.2236.5, 36.5136.5132211=========g h f g h f g h f

故第一级晶体管尺寸为7.68 1036.5=?; 第二级尺寸为956.1768.27.6=?; 第三级尺寸为96244.9636.5956.17≈=?。 故延迟为:0008.22)36.5136.5436.51(p p p t t t =+++++= ② 如果在四个寄存器地址输入的时候,只有正信号,反信号必须从正信号来获得。每个正信号的输入的等效负载为20,使用与①中同样的译码结构,在这种条件下确定晶体管的大小并评估延迟(以单位反相器的延迟的本征延迟Tp0为单位)。 解:因为输入时通过两级反相器,使这两个反相器分摊原来单个反相器的等效扇出,将两级反相器等效为一级,故其逻辑努力32.236.5h ==, 故36.5,68.2,32.2,32.24321====f f f f 所以: 第一级尺寸为:()9.2832.210=?; 第二级尺寸为:728.632.29.2=?; 第三级尺寸为:03.1868.2728.6=?; 第四级尺寸为:65.9636.503.18=? 正信号通路的延迟为:()0036.2236.5136.5436.5132.2132.2p p p t t t =++++++++= 反信号通路情况与上问相同,延迟为0008.22)36.5136.5436.51(p p p t t t =+++++= 2、 根据单位反相器(NMOS:W=0.5u L=0.5u PMOS:W=1.8u L=0.5u),设计出实 际电路,并仿真1题中第一问的路径延迟。 设计出实际电路如下:

存储器扩展实验

实验5 存储器扩展实验 一、实验目的 1.掌握PC存储器扩展的方法。 2.熟悉6264芯片的接口方法。 3.掌握8031内部RAM和外部RAM的数据操作 二、实验设备 PC机、星研Star16L仿真器系统+仿真头PODPH51(DIP)、EL-Ⅱ型通用接口板实验电路,PROTEUS仿真软件。 三、实验内容 1)向外部存储器的7000H到8000H区间循环输入00~0FFH数据段。设置断点,打开外部数据存储器观察窗口,设置外部存储器的窗口地址为7000H—7FFFH。全速运行程序,当程序运行到断点处时,观察7000H—7FFFH的内容是否正确。 四、实验原理 实验系统上的两片6264的地址范围分别为:4000H~5FFFH,6000H~7FFFH,既可作为实验程序区,也可作为实验数据区。6264的所有信号均已连好。(3000H~3FFFH也可用) 五、实验方法 1、运用PROTUES软件进行虚拟仿真实验。按照实验要求用PROTUES软件绘制电路,编制程序,并通过调试。 2、运用星研仿真系统进行实际系统仿真实验。将星研仿真器与微机和目标板相互连接构成完整的硬件仿真系统,按照实验要求在通用实验板上进行硬件系统连接,并用星研仿真器进行系统仿真运行调试。 3、实验说明 在采用星研仿真时,若CPU选型为8051则,应将P2、P3口修改为总线模式(默认为IO口模式)。若为8031CPU则无此选项,因此不必修改。 4、星研仿真器设置时,注意,在项目工作环境设置选项中的存储器借出方式中,不能借用仿真器的外部数据空间(直接选择默认方式即可),否则无法正确测试实验箱上的存储器。 5、利用星研仿真器,在选择用户板外部RAM方式下,可以在存储器窗口中,通过直接对外部存储器单元的内容进行修改来确定该单元是否可用,可以修改的单元,表明用户可用,如果无法修改(无论键盘输入任何数字与字符,始终显示FF),则表明该存储单元不可用。 六、实验电路 1、PROTEUS 仿真电路

存储器和IO扩展实验,计算机组成原理

科技学院 课程设计实验报告 ( 2014--2015年度第一学期) 名称:计算机组成原理综合实验题目:存储器和I/O扩展实验 院系:信息工程系 班级: 学号: 学生姓名: 指导教师:李梅王晓霞 设计周数:一周 成绩: 日期:2015 年1 月

一、目的与要求 1. 内存储器部件实验 (1)熟悉ROM芯片和RAM芯片在功能和使用方法等方面的相同和差异之处;学习用编程器设备向EEPROM芯片内写入一批数据的过程和方法。 (2)理解并熟悉通过字、位扩展技术实现扩展存储器系统容量的方案; (3)了解静态存储器系统使用的各种控制信号之间正常的时序关系; (4)了解如何通过读、写存储器的指令实现对58C65 ROM芯片的读、写操作; (5)加深理解存储器部件在计算机整机系统中的作用。 2. I/O口扩展实验 学习串行口的正确设置和使用。 二、实验正文 1.主存储器实验内容 1.1实验的教学计算机的存储器部件设计(说明只读存储器的容量、随机读写器的容量,各选用了什么型号及规格的芯片、以及地址空间的分布) 在教学计算机存储器部件设计中,出于简化和容易实现的目的,选用静态存储器芯片实现内存储器的存储体,包括唯读存储区(ROM,存放监控程序等) 和随读写存储区(RAM)两部分,ROM存储区选用4片长度8位、容量8KB 的58C65芯片实现,RAM存储区选用2片长度8位、容量2KB的6116芯片 实现,每2个8位的芯片合成一组用于组成16位长度的内存字,6个芯片被分 成3组,其地址空间分配关系是:0-1777h用于第一组ROM,固化监控程序, 2000-2777h用于RAM,保存用户程序和用户数据,其高端的一些单元作为监 控程序的数据区,第二组ROM的地址范围可以由用户选择,主要用于完成扩 展内存容量(存储器的字、位扩展)的教学实验。 1.2扩展8K字的存储空间,需要多少片58C65芯片,58C65芯片进行读写时的特殊要求 要扩展8K字的存储空间,需要使用2片(每一片有8KB容量,即芯片内由8192个单元、每个单元由8个二进制位组成)存储器芯片实现。对 58C65 ROM芯片执行读操作时,需要保证正确的片选信号(/CE)为低点平, 使能控制信号(/OE)为低电平,读写命令信号(/WE)为高电平,读58C65 ROM 芯片的读出时间与读RAM芯片的读出时间相同,无特殊要求;对58C65 ROM 芯片执行写操作时,需要保证正确的片选信号(/CE)为低电平,使能控制信 号(/OE)为高电平,读写命令信号(/WE)为低电平,写58C65 ROM芯片的 维持时间要比写RAM芯片的操作时间长得多。为了防止对58C65 ROM芯片执 行误写操作,可通过把芯片的使能控制引脚(/OE)接地来保证,或者确保读 写命令信号(/WE)恒为高电平。 1.3在实验中思考为何能用E命令直接写58C65芯片的存储单元,而A命令则有时不正确;

设计示例2寄存器堆设计

设计示例2:寄存器堆设计 1、 功能概述: MIPS 指令格式中的寄存器号是5bits ,指令可以访问25=32个32位的寄存器。这样的一堆寄存器“堆在一起”构成一个寄存器堆(Register File )。模块框图如图1所示: Regfile 图1 模块框图 2、 结构框图: 3、 接口说明: 表1: 寄存器堆模块接口信号说明表 clk we wdata Valid Valid waddr rst_n 图2 寄存器堆写时序框图

4、设计电路源代码 //功能描述风格寄存器堆的设计 module regfile( input clk, input rst_n, //写端口 input we, //写使能 input[4:0] waddr, //写寄存器下标 input[31:0] wdata, //待写入寄存器堆的数据 //读端口1 input[4:0]raddr1, //读端口1寄存器下标 output[31:0] rdata1,//从端口1读出的寄存器堆的数据 //读端口2 input[4:0]raddr2, //读端口2寄存器下标 output[31:0] rdata2 //从端口2读出的寄存器堆的数据); reg[31:0] regs[0:31]; //32个32位寄存器堆 //Write operation always @ (posedge clk or negedge rst_n) begin if(!rst_n) begin:reset_all_registers //将32个寄存器复位为0. integer i; for(i=0;i<32;i=i+1) regs[i] = 32'd0; end else begin //写寄存器堆有效时,更新寄存器堆中某个寄存器的数据 if((we == 1'b1) && (waddr != 5'h0)) begin regs[waddr] <= wdata; end end end //Read port1 operation assign rdata1 = (raddr1 == 5'd0) ? 32'd0 : regs[raddr1]; //Read port2 operation assign rdata2 = (raddr2 == 5'd0) ? 32'd0 : regs[raddr2];

寄存器组的设计与实现预习

寄存器组的设计与实现

一、实验目的 1、学习掌握Quartus||软件的基本操作; 2、理解寄存器组的工作原理和过程; 2、设计出寄存器组并对设计的正确性进行验证。 二、实验内容 1、设计出功能完善的寄存器数组并对设计的正确性进行验证。 (1)用图形方式设计出寄存器的电路原理图; (2)测试波形时用时序仿真实现,先将不同的数据连续写入4个寄存器后,再分别读出;(3)将设计文件封装成器件符号; (4)数据宽度最好为16位。 三、实验设计 1、集成电路芯片 (1)74760:三态输出4*4寄存器堆 74760提供了4个4位寄存器。在功能上可对这4个寄存器分别进行写操作和读操作。在寄存器写操作时,通过WB、WA两个寄存器选择端的组合00、01、10、11选择寄存器。通过GWN写控制端进行三态控制,GWN为低电平时将数据写入端数据D4D3D2D1写入该寄存器。在寄存器读操作时,通过RB、RA两个寄存器选择端的组合00、01、10、11选择寄存器,通过GRN读控制端进行三态控制,在GRN为低电平时,将所选寄存器数据通过Q4Q3Q2Q1进行输出。 “写”功能表

“读”功能表 2、设计原理 要设计16位的存储器组,需要74670芯片4片,在寄存器组工作时,同时对4片74670芯片进行操作,封装后即可作为包含有4个16位寄存器的寄存器组在主机系统中调用。 四、实验结果 1、原理图

寄存器组由4个74670组成,将4个芯片的GWN、WA、WB、GRN、RA、RB 分别连在一起,共同控制4个芯片的读写操作。总共有22个输入端。即 IN[15]、IN[14]....IN[1]、IN[0]和GWN、WA、WB、GRN、RA、RB。16个输出 端。即OUT[15]、OUT[14]...OUT[1]、OUT[0]。

寄存器组的设计与实现

实验三寄存器组的设计与实现 一、实验目的 1. 学习掌握Quartus II 的图形编辑、编译、仿真的设计流程; 2. 学习74670三态输出寄存器堆的使用; 3. 理解寄存器组的工作原理和过程,设计出4个16位寄存器组并对设计的正确性进行验证 二、实验任务及要求 1. 设计出功能完善的寄存器组,并对设计的正确性进行验证。具体要求如下: (1) 用图形方式设计出寄存器组的电路原理图。 (2) 测试波形要用时序仿真实现,先将不同的数据连续写入4个寄存器后,再分别读出。 (3) 将设计文件封装成器件符号。 (4) 数据的宽度最好为16位。 三、实验装置 安装有Quartus II软件的PC机1台 四、设计思想 运用具有三态功能的芯片74670进行设计,74670为4*4(4个4位寄存器)的寄存器堆,使用四片74670并联,同时对4 片74670 芯片进行读写操作控制,从而实现4个16位数据的存储与输出。 五、逻辑电路图

74670芯片图:三态输出的4*4寄存器堆 六、实验结果: 见原理图,波形图以及元件封装图。 1.原理图分析:见设计思想

2.波形图分析: 当RE为1,WE不为1时,实现输入功能,WB,WA控制数据输入到哪个寄存器组当RE为1,WE为1时,出现高阻状态,此时既不输入也不输出 当WE为1,RE不为1时,实现输出功能,RB,RA控制哪个寄存器组的数据输出 3.封装元件的功能说明: d[15..0]16位输入数据 q[15..0]16位输出数据 gwn:写入数据使能控制端,低有效 wa,wb:选择控制端,四种组合控制16位数输入到相应四种寄存器组 grn:读出数据使能控制端,低有效 ra,rb:选择控制端,四种组合控制从四种寄存器组读出相应16位数

存储器扩展实验

存储器扩展实验 1.实验目的 1. 了解存储器的扩展方法及其对存储器的读/写。 2. 掌握CPU对8/16位存储器的访问方法。 2.实验设备 PC机一台,TD-PITC实验箱。 3.实验内容 编写程序,往扩展存储器中传送有规律的数据(如5555H、AAAAH或顺序递增的数据等,以便于观察写入是否正确),然后通过Tdpit软件中的“扩展存储区数据显示窗口”查看该存储空间,检测写入数据是否正确。 1)循环传送16位规则字到扩展存储器(共32768个字); 2)循环传送16位非规则字到扩展存储器(共32768个字); 3)循环传送字节数据到扩展存储器(共32768个字节)。 关于规则字和非规则字的含义见以下16位存储器操作的说明。 4.实验原理 1)SRAM 62256介绍 SRAM(静态RAM)的基本存储元是由MOS管组成的触发器电路构成,每个触发器可以存放1位信息。只要不掉电,所储存的信息就不会丢失。目前较常用的SRAM有6116(2K×8),6264(8K×8)和62256(32K×8)。TD-PITC实验箱内使用了2片62256构成32K×16的扩展存储器模块。62256的引脚如图1所示。 图1 62256引脚图 2)16位总线的存储器接口 TD-PITC实验箱中的16位系统总线提供了XA1~XA20、#BHE、#BLE、MY0等信号用于扩展存储器的读写操作。MY0是系统为扩展存储器提供的片选信号,其地址空间为D8000H~DFFFFH,XA1~XA20提供了16位(2字节)存储单元的地址,#BHE和#BLE用来确定访问16位存储单元中的低8位还是高8位,#BLE有效时允许访问低8位(D7-D0),#BHE有效时允许访问高8位(D15-D8)。其对应关系如表1所示。

寄存器堆的设计

寄存器堆设计 1、功能概述: MIPS指令格式中的寄存器号是5bits,指令可以访问25=32个32位的寄存器。这样的一堆寄存器“堆在一起”构成一个寄存器堆(Register File)。 2、接口说明: 寄存器堆模块接口信号说明表 脉冲reg, 复位端reg, 写使能端reg, 写地址reg, 写数据reg, 读地址一reg, 读地址二reg, 读数据一reg, 读数据二reg; 设计思路: 1、复位处理是利用标志位flag实现的,当复位时,flag=0;利用i来计数,当i<31 时,flag都等于0;直到i=32,复位完成,flag=1,这时,才可以进行写操作。 2、当复位时,需要32个脉冲才能将寄存器全部复位。复位未完成,flag一直等于 0。若复位未完成时,进行写操作,这时,并不能写进去,便出错了。所以,进行32分频,当寄存器可以写入时,复位已完成。 3、设计电路源代码 //----32个32位寄存器堆 module regfile( input reg, //脉冲 input reg, //复位端 input reg, //写使能端 input [4:0] reg读地址一 input [4:0] reg读地址二 input [4:0] reg, //写地址 input [31:0] reg, //写数据 output [31:0] reg读数据一 output [31:0] reg读数据二

); //---------------------------------- reg [31:0]regfiles[0:31]; //实现寄存功能 reg [4:0] i; //实现flag的变换reg flag; //实现复位的标志reg reg; //实现写数据的脉冲 reg [4:0]count; //---32分频处理 always@(posedge reg or posedge reg) begin if(reg) begin count<=5'd0; reg<=1'b0; end else if(count<5'd16) begin count<=count+1'b1; end else begin count<=5'd0; reg<=~reg; end end //---复位处理 always@(posedge reg or posedge reg) begin if(reg) begin i<=5'd0;

相关主题