CPU计算机组成原理实验报告_第1页
CPU计算机组成原理实验报告_第2页
CPU计算机组成原理实验报告_第3页
CPU计算机组成原理实验报告_第4页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

1、cpu计算机组成原理实验报告 计 算机组成与系统结构实验报告 pu 设计 与实现 院( ( 系) ) : 专业 班 级 : 计算机科学与技术 组 员 : 指 导 教 师 : 实验目得: 设计实现 cpu 部件。 实验仪器: : p机(安装altbra 公司得开发软件 quarusi,mdsim)两台 tecca计算机组成原理试验箱 实验过程: 一 、理论设计 1 、1、 、 设计 指令集 设计 cpu 第一步,就就是根据需求,确定功能,并且设计出指令集。指令集包括每一条指令得编码方式,操作码以及每一条指令实现得功能。考虑到第一次设计 cpu,在指令集设计过程中难免会出现考虑不周全或者指令集设计

2、不科学 得问题,我们借鉴了经典得 3条is 指令集。在对指令集每一条指令进行解读、分析后,我们确定:31 条 mi指令可以满足我们得p得基本功能。下面将 31 条 mps 指令得编码格式、对应得操作类型以表格得形式列举出来: mi s 指令集(共 31 条) t # 31、26 2、21 20、16 5、1 10、6 5、 r-type op rs rt d sat unc ad 00000 rt rd add 1,$2,$3 $123 rd rs + r ;其中 rs,rt=3, rd=$ dd 00000 rt d addu $1,$2,3 1=$2$ rd - rs + r ;其中 rs

3、=$2,rt=3, d,无符号数 sub 0000 rt rd sub 1,2,3 1=23 d rs r ;其中 r=$2,=3, r ubu 000000 s t d su 1,$2,$ $1=23 rd - rs r ;其中 rs,rt$3, d=$1,无符号数 ad 00000 rs r r ad $1,$2, 1$2 3 rd rs t ;其中s=$2,rt=3, rd$1 or 00000 rs rt rd or $1,2,3 1=2 3 rd - s r ;其中s=$2,rt=3, rd=$ o 00000 rs r d xr 1,2,3 $1=2 rd rs or rt ;其中

4、2,rt3, 1(异或) nr 0000 s rt rd nor $1,3 1($2 3) rd - not(rs t) ;其中 rs$,rt$, rd=$1(或非) t 00 rs rt lt 1,$,3 if(2$3) 1=1 ese if (rs t) d= else d=0 ;其中 r,r=, rd= =0 sl 000000 s t rd slt 1,2, f($23) 11 else 10 if (rs ) r= else rd= ;其中2,rt=$3, rd=$1 (无符号数) sll rt rd sham 00000 sll ,$2,10 1=210 rd - samt ;sm

5、t 存放移位得位数, 也就就是指令中得立即数,其中 rt=, r= r rt rd hmt 0001 srl $,2,1 $20 r - r hamt ;(logical) ,其中rt=$2, rd=1 sra rt d shmt 0001 sra 1,2,10 1=20 rd rt shamt ;(imet) 注意符号位保留 其中 rt=$, r=$1 lv 0000 s r llv 1,$,3 1$2$ rd r rs ;其中 r$3,rt=2, d=$ sv 000 rs t d srlv 1,$,$3 $1$23 rd rt rs ;(lgia)其中 rs3,rt=2, rd= sra

6、v 00000 rs r r srav $1,$3 1=$3 rd rt rs ;(arithmetic) 注意符号位保留 =sr 中其,rt=$2, rd=$1 000000 rs 0000 00100 jr 31 t $3 pc rs ityp o rs r immdate adi 001000 rs r immediate adi $1,$2,10 1=2+1 rt rs + (igntnd)immdiae ;其中 rt,rs=$2 add00101 s t mmedite addi $, $1=$2+10 r rs + (zerexn)i 2,0 edite ;其中 r=1,s$2 a

7、ni 01100 r t immediat i 1,2,10 $1 10 rt rs (eo-extend)immdia ;其中 rt=1,r$2 i 001101 r rt imedit ndi 1,$2,10 1 10 rt - s (er-exen)immdiat ;其中 rt=1,rs$ xoi 0110 r rt imediate ni 1,,10 1= 10 rt rs xo (zerext)immeiate ;其中rt=$1,s=2 lui rt imdae lu 1,100 $1=106536 rt - medte55 ;将6位立即数放到目标寄存器高 16 ,位目标寄存器得 低

8、 16位填 0 lw 10001 r rt imedite w $1,10($) =mmry21+ 0 rt meyrs (sgnexted)imdiae ;rt,s=2 sw 101011 r rt immdate w $1,() mmory$0 = memorys + (sgn-extend)medit t ;r=,rs=$2 beq 0100 rt imeiate beq $1,$,1 i($=$2) got c+440 if (rs = r) pc pc+4 (igextend)imiae2 b 00101 rs rt immedite e ,$2,10 if(1!$2) otogc+

9、44 if (rs != rt) pc p+4 + (sign-extend)immede slt 0101 s r imdiae slt $1,1 if(210) $1=1 else 0=1 (s (nexend)immediat) rt1 else t=0 ; 其中 rs$2,rt=$1 stu 00101 s rt imediate sliu $1,, i(21) if ( (zeroxtnd)imediat) 10 1= ls $ t=1 ele rt=0 ; =tr,2$sr 中其1 j-typ o ddres 01 addrs 10000 goto 100 pc (pc+4)1、8

10、,addess,0 ;addrss1000/4 ja 000011 addrs al 1000 3pc+4; ogto 10000 pc+4;pc - (pc+)3、28,ddress,0,0; 001=sserdda00/4 经典得 mip指令有三种格式:rtype、itype、jtpe。其编码格式各不相同,分别代表寄存器操作指令、立即数操作指令、跳转指令。 寄存器操作主要就是将寄存器中得树取出进行运算并存回寄存器;立即数操作为一个寄存器数与指令中得扩展后得立即数进行运算得到结果再存回寄存器;跳转 我们后面得设计都就是对这31条指令进行具体实现,所有得内容紧密围绕这31 条指令。 1 、2、

11、 、 画数据通路图 在设计完指令后,要做得就就是根据指令描述得功能确定 cpu 有哪些部件, 并且确定各部件之间得连线方式。首先,一个 cpu 最重要得部件一定就是控制器。控制器就像人得大脑,控制其她各个部件得工作.其次,由于就是基于ips指令集得 cpu,大多数操作基于寄存器,因此必须设计一个寄存器堆.此外,alu运算部件对于 cu 来说也就是必不可少得.由于有六条指令涉及比较操作,并且给有效位置位。考虑到本p设计初衷就是四级流水控制,若一条指令多个节拍使用 alu 部件会造成部件冲突,后期控制会比较复杂。因此,在本 cpu 中额外设计了一个比较部件。此外,还有其她部件,如 pc 部件、立即

12、数扩展部件、数据寄存器、地址寄存器等。再根据 3条指令,画出数据通路图。 这只就是一个初步得数据通路图,却奠定了 c得基本构架。可能在后续得详细设计过程中,会对这个数据通路有所改动,但一定就是以现有得图为基础.可以说,这就就是我们将要设计得 cpu 得一个初步蓝图。 二 、详细设计 2 、1、 、 控制信号 得 提取与分析 这一部分可以说就是整个 cpu 设计过程里最重要、最复杂得过程之一了.在这一部分,我们将依据数据通路图,分析数据通路中所有控制信号得组成与赋值。第一步,我们将条指令都划分为四个节拍执行完成:取指与译码、取数与lu 操作、主存取数、写回寄存器.我们需要对每一条指令得每一个控制

13、信号进行分析,判断它应该在第几节拍给出. 经分析,我们在 cp工作过程中共需要控制信号8 个(其中包括位 alur),分别就是:0,1,lur,pc_1,rt_dr,c_a,br,db_dr,rs_au,rt_alu,dealu,c_a,eroalu,hx_lu,shamt_alu,dr_g,rw,rg,utr0,alucr,aluctr2,altr3,addr_p,rb,aldr,ar_b,dr_,dr_reg1,p_w,pcr,j_p,imde,de_,d_reg,rs_rg,r_e,rs,rt_,de_,t,eore,c_jie。具体得信号表在附件得 exce中。列出所有控制信号后,对每

14、一条指令需要哪些控制信号,在第几节拍需要这些控制信号都要标识清楚.如对于一号指令有符号数加:在第一节拍(取指与译码),要给出控制信号pc_1,pca,db_ir,将 p地址传入地址总线并取出相应得指令送入指令寄存器,c 再完成自加一得操作;第二节拍(取数与 alu 操作)需要得控制信号就 是s_alu,rt_lu,reg_r,alu_dr,_reg,r_reg(alctr 为,四个控制信号都不给出),将指令中,t 地址传给寄存器,寄存器将对应寄存器中得数取出送到 alu,alu 根据给出得 aluctr 进行不同得操作。第三节拍就是写回寄存器,给出控制信号 drreg,regw,d_reg,将

15、 d中得数、r地址送至寄存器,并打开寄存器写开关。用这种方式分析所有指令。 在分析完控制信号后,我们就可以对控制器进行具体设计了。 、2 、各 部件具体设计 2 2 、2 2 、1 1 、a a u u 部件 al就是基于指令集来设计得,可完成二进制信息得算术运算、逻辑运算与移位操作,共包含 31 条 ms 指令。我们将其总结为3 种 alu 操作类型,用四位二进制数进行编码,如下图所示。这些二进制编码作为 alu 控制信号,即aluct。 编号 操作类型 二进制编码 1 有符号加 000 2 无符号加 001 有符号减 010 4 无符号减 1 5 与 010 或 10 7 异或 0110

16、8 非或 0111 9 有符号比较 10 1 无符号比较 100 11 逻辑左移 10 12 逻辑右移 01 1 数字右移 1100 在 alu 中,为符合它得双操作数功能,我们设计了两个寄存器 r1 与 r2,作为alu得两个输入。经过对指令集得分析,将进入alu数据来源分为rt、s,sham,imm,p几种类型,为了避免数据操作时发生冲突,将其分别放在两个寄存器中,其中 rt、imm 放在 r1 中,rs、sa与放在 r2 中。除了两个寄存器输入外,还有 al控制信号输入端口 aluctr。一个输出端口 ou。在u 运行过程中,从、r中取出数据,根据lutr 给出得控制信号进行相应得运算,

17、从 out 端口输出. alu 部件得代码见附录。 2 2 、2 2 、2 2 、c c 部件 pc 部件就是用来计算下一条指令得,在一般情况下,指令都就是顺序执行下去得,即c+,而在遇到跳转指令时,则需要进行其她复杂得操作,所以我们制作得 p部件主要分了这两种操作方法。 在编写得 pc 部件代码中,共有四个输入端口,分别就是从当前执行得指令中取来得地址 adrs,用于下一条 pc 得拼接,既然有拼接与 p+1 得两种操作,我们就分别给出了两个输入得c 操作信号:p_ctr 与 pcpj,另外还有从lu 来得运算结果 alu_p作为第四个输入端口。输出端口有 pcout 与pc_alu。当接收

18、到c_ct信号时,进行c+1 得操作,而当接收到 pcp信号时,进行 pc 得拼接操作。 pc 部件得代码见附录。 、2 2 、3 3 、寄存器 组 寄存器就是计算机得一个重要部件,用于暂存数据与指令等。由于考虑到存储空间得大小,我们将原有得 32 个2 位得寄存器组修改为 4 个2 位得寄存器组. 在寄存器组中,存在两个控制信号,分别为读与写,当收到读信号时,我们 接收到得地址所对应得寄存器得数据取出,若接收到得就是写信号,我们就将接收到得数据写回之前发过来得地址所指示得寄存器中。其中,地址得来源有指令中得 r_ad,rt_dr 与d_adr,数据来源为 rd_data,共有两个输出端口,分

19、别为 rt_u,r_ou。 寄存器组得代码见附录。 2 2 、2 2 、 、 立即数 扩展部件 立即数扩展部件得主要工作就是将指令中得6 位得立即数扩展成为 32 位得数,并且有有符号扩展与无符号扩展两种。因此,对于一个立即数扩展部件来说,有两个输入一个输出。输入分别就是 16 位得立即数与控制扩展方式得控制信号,输出就是扩展之后得2 位得数。立即数扩展部件具体代码见附录。 2 2 、 、5 5 、比较 部件 比较部件就是我们在本次设计中得一个创新点。考虑到每一次比较操作都要经过 au,而涉及到比较操作得指令除了比较操作本身还会用一次 alu 操作,这在流水设计中无疑会带来部件冲突。尽管在发生

20、冲突时,我们可以采用检测冲突、加入阻塞得方法进行排除,但这无疑给控制得设计带来了很大得困难。我们考虑:能否为比较操作专门设置一个比较部件,用来判断两个操作数大小并依据指令类型为标志位赋值。为后面得操作提供依据。 我们设计得比较部件,可以完成如下四种操作:判等置 1,判不等置 1,判大于置,判小于置 1。因此比较部件有四个输入:比较控制信号,比较控制信号2(两个信号组合起来表示现在在做哪一种判断),比较数 1 以及比较数 2,一个输出对标志位置位。具体代码见附录。 2 2 、 、信号 发生器 信号发生器就是根据脉冲信号循环给出节拍控制信号得部件。学过熟悉逻辑得都应该就得不难。首先将 ck 进行分

21、频,将分频后得信号与 ck 组合起来,表示四个节拍,从一到四分别为:00,01,10,1。在仿真后出现了下面得情况(图 2、1): 图 2、6、1 仔细观察可以发现,途中输出信号 w1,w2,w3,w出现了毛刺(如 40ns 处1 信号)。在查阅相关资料并向教员请教后我们意识到,这就就是数电中说到得"毛刺'。由于从"01'到"10',两个输入信号同时发生了变化,所以在变化得一瞬间出现了不想要得"毛刺'。我们又查阅数电书,发现解决毛刺得方法就就是采用"格雷码'编码方式,即每次信号变化时只有一个信号发生变化。

22、因此我们又添加了一个分频信号在 clk 得时钟下降沿翻转,与原先始终上升沿翻转得信号一起,组成了新得控制信号,从一到四分别为:00,01,1.这样产生得信号就符合"格雷码编码方式,也不会产生"毛刺'。(如图 2、6、2) 图、6、2 信号发生器源码见附录。 、2 2 、 、 硬布线控制器 在设计 cp之初,我们就决定了使用硬布线方式设计控制器.在 ide 工具得帮助下设计硬布线控制器比真实得大规模集成电路设计硬布线要简单得多。运用一些固定得格式,id会自动生成硬布线电路.之前在 2、得部分,我们就已经完成了控制信号得提取与分析,这时候只需要细心地将xcel 表格中得

23、内容转换成代码. 控制器得输入有六个:6 位得p,6 位得 func,节拍信号 w1,w2,w4,输出为所有控制信号.如在某条指令中,需要在第几节拍给出哪个信号,就将该信号等于对应得节拍输入即可,d会自动生成硬布线电路。源码见附录. 实验感悟 唐玲芳 得实验感悟 经过几个星期得努力,虽然没能把制作出来,却收获了不少。在这次实验中,我最大得收获就是对计算机组成原理这门课程得理解更加深刻了。在制作得过程中,我们不懂就问,自己动脑去理解,因为我们知道,如果不理解,实验就是无法进行下去得,在教员得悉心帮助下,我们也取得了一些成果。在实验得前期,我们一步一个脚印:确定 cu 得功能、能执行指令集,制定通

24、路路线图,分析出所有得控制信号等等。在这个过程中,我们也充分理解到"结构决定功能'这句话,在没能全面考虑到所有得功能时,在通路图上总会少几个部件,只有将所有功能走通了,都能实现了,我们得通路才真得制定完整了.在实验得过程中,我主要参与了 alu 部件、寄存器组、pc 部件得制作.在编写程序得过程中,也遇到了不少麻烦。比如说部件得中心思想、主要结构没有弄清楚,导致程序出错,而无法进行下去。在之前我们一直以为控制器所给得控制信号就是在 au 内部得,控制信号一来,才知道数据就是从哪来 a得,然后再从u 中得寄存器中取出来进行相应得运算,但就是后来才发现,控制器得控制信号并不归 a

25、lu 管,它就是各部件连接得通路上得,在 al中我们只需要从寄存器中取数,根据 al控制信号进行相应得运算就可以了。明白了这一点后,我们得 a才基本完成了正确得实现。另外就就是我对所用得erilog 语言不够熟悉,很多语法都没有完全掌握,在写程序时,断断续续,影响进度。 总得来说,在这次实验中,我得收获还就是很大得。无论就是对课程得理解还就是对编程、动手能力得提高,都有一定程度得帮助. 戚洪源 得实验感悟 在回到信大之前,心里就是非常向往这次实验得.在科大学习了一学期计算机原理,第一次如此深入地接触计算机,当时教员说会在暑期学期用整整两周时间来做这个实验。原本以为自己没有这样得机会,但很幸运还

26、就是解除了这个实验。整体感觉就是:很难.设计pu 不就是纸上谈兵,就是要实实在在写代码烧板子得,一个小小得错误可能就导致了最后得失败。我在试验中最大得感受有以下几点: 一、 万事开头难 做这个实验摆在面前得第一个问题就就是:现在干嘛?这就是一个很实际得问题,如果没有教员指导,应该怎么开始?在实验开始前我就着手资料准备,与许多研究生学长交流之后确定了从指令集到通路图得方案。浴室我着手开始搜关于设计指令集得资料,并且确定以1 条 mips 指令集为基础。事后回想起来,真就是万事开头难。当一个复杂得任务来临不知道从何入手时,一定要注意,千万不能自己搞自己那一套,很可能一开始就走到了一个错误得道路上。

27、既然不知道从何入手,就去查资料,请教别人,这就是本次实验得收获之一。 二、 模块化设计思想与黑盒设计思想 pu 这几工作量很大,而且各部分之间紧密联系.首先时间紧,一个人去完成不太可能实现,而合作得话,如何将一个联系非常紧密得东西分开去做呢?这就要用到模块化设计思想与黑盒设计思想。将这个数据通路图中得元器件按照功能进行最小化划分。一个元器件有什么输入什么输出,实现什么样得功能,这与总体连线就是没有太大关联得。确定出来大致有哪几个元器件,分别就是什么输入输出,比如 a部件,就两个操作数输入,一个控制信号输入,一个结果输出,至于怎么与寄存器堆相连,输出到哪里之类得问题,不需要 alu 设计者去考虑

28、。最终,在所有元器件确认没有问题之后进行顶层连线。讲一个个元件瞧成黑盒,元件设计者不需要知道外界怎么连接它,顶层设计者不需要知道内部如何运行。这样,就可以把 cpu 这个有机得整体合理划分成几小块,交给不同人去分别实现。这种思想还就是令我感触十分深得。在以后得大项目、大问题出现得时候,也可以考虑这种方式进行分工合作。 三、 对于.处理器 有了 更深一步得 认识 实践就是检验真理得唯一标准。经过这一次得实验,我对于 cpu 得理解又深了一层。在科大得时候做过一个简单得,七条指令得单周期pu 得元器件连线图,连控制信号都就是教员给出来得,也可以跑指令,当时觉得非常激动。这一次,我自己动手设计 3条

29、指领得流水pu。从设计指令集开始,一步一步地提取控制信号,这个过程得收获非常大。这一次实验让我彻底理解了设计 cpu 得控 制器应该遵循一个什么样得流程,绝不就是简单复制某本书上得真值表.在走遍31 条指令后,整个 cpu 得数据通路图已经深深刻在我得脑海里。还有太多太多,整个过程得确让我受益匪浅。 四、 对于 硬件设计有 了 更深得了解 原先也学习过数字设计课程,不过几乎没有接触实验。以至于学完之后许多逻辑上得问题根本无法理解.这一次做了实验,再回过头来想想,许多东西就可以理解了.特别就是一些问题得处理,必须用到数电得知识。如:设计信号发生器得时候遇到得"毛刺问题,一开始一头雾水,

30、根本不懂为什么会出现这个东西。后来经教员点拨,一下子想起来这就是数电中学习过得"格雷码编码问题.这时运用数电知识问题迎刃而解。 五、 总结 总结起来,这一次实验即使最终没有完整地拿出结果来,但就是已经有了许多收获了。今年暑假得时候与科大得教员交流,说到 cpu 实验得问题时,她说作为一个计算机专业得学生,没有去自己尝试过做一个pu,还就是有点遗憾得。做过一次,不管结果如何,都会有所收获.现在这学期得实验也告一段落,收获肯定远比上面说得要多。真得不虚此行,后面有机会,一定要把这个 cpu 再拿出来,把它做完.不知道这个可不可以算一个毕业设计。如果做出来,能算信大 cpu 第一人吗?哈哈

31、,开玩笑了. 附录 lu 部件源码 modu au(lurt,1,r2,o); input 3:0aucr; iut 31:01,r2; upt reg31:0ot; alway() bein ase(lcrt) 0: bgi if(r231=r11) begin out31r231; ou30:0r23:0+r130:0; end es bgin if(r23:r130:0) bgin out1=r21; ou30:=r230:0-r3:; end e begin out31=r3; ou0:0=r:0r230:0; ed nd ed 00: egn out=rr1; ed 0010: bg

32、in if(r231=r131) begi f(r23:r130:0) egn ut1=r231; ou30:=r23:-3:; en else begin out31=r13; out30:0=130:0r230:0; end nd els beg t31=r231; out30:0=r:0+r10:; end end 001: begin out=rr1; end 0100: bgn ut=r2r1; nd 0: begi out=r2|r1; end 00: begin out=r21; end 0111: begn our2r; end 100: egi if(r1=r131) bgi

33、n if(r231=) bgin i(r20:0r30:0) egin out=1; end else in ut=0; end end ele begin f(r230:0r10:) gin t=; en ele bi out=; ed end end es n f(11=1) begin out; nd els begin out=0; d en d 101: begin i(r21) begin ot=1; n ese bgin out=0; end end 1010: bin ou=(r1); d 1011: begi out=(r2r); end 110: begn ut(r1);

34、end edase en edou c pc 部件源码 module p(ddres,alu_pc,p_alu,pct,pc_p,pc_ot); inpu 2:0adess; nut 3:0alc,p_cr,cj; output 31:0cout,pal; g 31:0r; alway(*) bn if(pc_tr) en rr+4; nd i(cpj) bgin r=4; r:2=ades; r1:0=0; end nd endmdle 寄存器 组源码 modue register(rs_addr,rt_addr,rd_d,rd_at,rad,wri,rt_t,rs_out); iut 4:

35、saddr,rtaddr,rd_r; input 31:0rddta; nput rea,wite; output 31:0rtou,rs_ou; reg 31:0t_out,o; re 1:0r0:; lways(*) egin f(rea) ei f(rs_dr) begi cas(rs_adr) 000: begin rut=r0; end 00001: begn sout=r1; ed 00010: gin s_otr2; en 0001: begin rs_out3; en ncse end if(rt_addr) gin ase(rt_adr) 00: bgin rt_t=0; e

36、nd 0001: ben rutr; end 0010: begn r_ou=r2; ed 0001: begin rt_=3; en ncas end end ese bgin cas(rd_ad) 000: bgi 0=rddt; en 00: in =rdta; nd 0010: begi 2_daa; en 001: begin 3d_ta; end endcas end e endodule 立即数扩展部件 源码 dul de(eu,imm,_out); pu deu; inpu 5:0imm; output 3:0 de_out; reg 1:0 deout; lay(*) egn

37、 ;mm=0:51uo_ed )0ued(i ge ;1mmi3tuo_ed ;51mmi=03uo_d ;51mmi92t_d de_out28=imm5; d_utimm15; de_out26=im; ;5=5uo_d ;51mi=42tuo_e eout23=m15; ;51mi=2tu_ed ;51mmi=1tuo_ed ;51=0tuo_ed ;51mm=91uo_ed ;51mmi1tu_ed ;5mi=1o_d d_ot16imm15; ed esle nib ;0=3t_e de_ou0=0; ;=9to_ed ;=82tuo_d ;0=2to_ed ;0=62to_d ;=

38、52tued de_ou24=0; ;=32tu_ed ;0=2to_e ;12to_e ;0=2tuoed deut19=0; ;0=81tuod ;0=71tued de_out16=; dnend endmodle 比较部件 源码 mole (r1,2,vst,0,1); ip ,1; inpt 3:0 1,2; ouput t; rg nvst; re nu; num=0+12; lways(*) bei )mun(esc :0 ngeb if(r=r2) ;=tsn sle ;0tvn dne 1: en )2r=1r(fi nvst=; ese vt=; end :2 bgn )2

39、1r(i ;=tsvn es ;=sv dne 3: ben )1r(i ;1=tvn ele ;0=tsvn dn ndcase end endmodue 信号发生器源码 odule signal(cl,1,w2,3,w); inpt clk; utpt 1,2,w3,w4; reg w1,w2,w,w4; reg k2,cl3; always(posedge clk) gin ;kc=klen alwys(ngedge cl) begn ck3=cl3; ed alwys(lk r c) begin ;2klcklc1w ;lcklc=2 w3=clkclk2; ;2lcc=4wend d

40、ode 硬布线 控制器源码 mode control(o,fc,w,w2,w,w4,rt_,0,pc1,pc_b,d_ir,dbdr,rs_lu,tlu,d_au,pcalu,eroalu,he_,hmt_alu,dreg,reg_,reg_r,aluctr0,auctr1,uc2,lutr,dr_pc,dr_db,al_dr,aluar,arab,d_,d_re,c_w,pc_r,j_p,imm_de,de_,rd_eg,rs_rg,rtreg,r_,_,de_,vst,zero_reg,p_jie); ip 1,2,w,w4; npu 5:0 op,func; otput 0,1,au_a,_1,_dr,pcab,b_ir,dbdr,rsalu,rt_al,d_alu,pcl,zero_alu,he_alu,shamt_al,dr_reg,g_,reg_,alu,alucr,aluctr,lutr,addr_c,drd,aud,r_ab,dr_pc,d_reg31,c_,pr,_p,imm_de,de_u,rd_re,rsg,_g,r_,rt,de,_st,zero_re,pc_jie; e ,1,alur,c_1,rtdr

温馨提示

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

最新文档

评论

0/150

提交评论