欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    组成原理课程设计.docx

    • 资源ID:17139899       资源大小:262.23KB        全文页数:54页
    • 资源格式: DOCX        下载积分:1金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要1金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    组成原理课程设计.docx

    1、组成原理课程设计常规型硬联线控制器的设计与调试科 目:计算机组成原理 实验背景硬布线控制器是早期设计计算机的一种方法。这种方法是把控制部件看作为产生专门固定时序控制信号的逻辑电路,二次逻辑电路以示用最少元件和取得最高操作速度为设计目标。一旦控制部件构成后,除非重新设计和物理上对它重新布线,否则要想增加新的控制功能是不可能的。硬布线控制器是计算机中最复杂的逻辑部件之一,由于其结构上的缺陷使得对它进行设计和调试非常复杂且代价很大。正因为如此,硬布线控制器被微程序控制器所取代。但是随着新一代机器及VLSI技术的发展,硬布线逻辑设计思想又得到了重视。 设计要求针对TEC-4实验台利用ispLSI103

    2、2芯片设计一个硬布线控制器,本控制器可以执行五条控制台指令:PR,KRD,KWE,KLD,KRR以及九条机器指令:ADD,SUB,MUL,AND,STA,LDA,JMP,JC,STP。 实验目的 融会贯通计算机组成原理课程和计算机系统结构课程的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,特别是对硬联线控制器的认识。 学习运用ISP技术进行设计和调试的基本步骤和方法,熟悉集成开发软件中设计,模拟调试工具的使用,体会ISP技术相对于传统开发技术的优点。 培养科学研究的独立工作能力,取得工程设计与组装调试的实践经验。 实验设备 TEC-4计算机组成原理实验系统一台 双

    3、踪示波器一台 逻辑测试笔一只 ispLSI1032芯片一个 Lattice公司的IspExpert软件 实验准备 时序信号发生器:由晶体振荡器产生MF信号(频率1MHz),同时产生T1,T2,T3,T4,W1,W2,W3,W4时序信号,关系如下图。其中W1,W2,W3,W4用于硬布线控制器的节拍信号 实验台上自选器件实验区提供有IspLSI1032芯片及下载插座,可以从PC机上编程下载 DB,DP,DZ:DP1时,计算机处于单拍工作方式,按一次QD发送一组时序信号T1,T2,T3,T4;DB1时,计算机处于单步方式,按一次QD发送一组W1,W2,W3,W4时序脉冲,同时如果执行过程当中遇到TJ

    4、指令,将停在当前节拍脉冲的T4时刻。 SKIP信号:当SKIP1时,信号由当前节拍直接跳到W4节拍 微操作控制信号总结如下:控制信号信号作用信号有效条件C在加法运算和减法运算时产生的进位信号T4上升沿ALU_BUS允许运算结果送往数据总线1LDDR1M1=0时DR1接收寄存器堆A端口数据T3下降沿M1=1时DR1接收数据总线DBUS数据LDDR2M2=0时DR2接收寄存器堆B端口数据T3下降沿M2=1时DR2接收数据总线DBUS数据WRD控制双端口寄存器堆RF的写操作1且T2上升沿RS_BUS#控制RF的B端口数据是否能送DBUS上0LDER将DBUS上的数据打入暂存寄存器ER1且T4上升沿S

    5、W_BUS#将SW7-SW0数据送往DBUS0CEL#选中双端口存储器RAM左端口0LRW允许RAM左端口读操作1且T3上升沿允许RAM左端口写操作0且T3上升沿CERRAM右端口读出数据并放到指令总线INS上1禁止右端口操作0LDAR1将DBUS数据打入地址寄存器AR11且T4上升沿AR1_INCAR1的值加11且T4上升沿LDAR2M3=0时AR2的数据从程序计数器PC打入1且T2下降沿M3=1时AR2的数据从DBUS打入LDR4M4=1时R4的数据从DBUS打入1且T2下降沿M4=0时R4的数据从IR0-IR3打入PC_ADDALU2完成PC和IR低4位相加即PC+D1PC_INCPC+

    6、11LDPC程序计数器PC接收来自DBUS的地址1且T4上升沿LDIR将来自RAM的指令打入指令寄存器IR1且T4上升沿S2,S1,S0选择运算器ALU的运算类型1数据通路图:设计说明书 设计步骤 分别画出控制台指令及机器指令流程图。 根据流程图作出微操作控制信号的译码与时序分布表,然后用逻辑表达式表示出每个信号。 由逻辑表达式写出ABEL语言源代码。 对程序进行编译,下载到芯片。 连线,调试。 测试。 具体设计思路 根据要求,列出所需的控制台指令和机器指令控制台指令名称指令功能指令格式SWCSWBSWAKRR读寄存器堆方式100KRD读双端口存储器方式001KWE写双端口存储器方式010KL

    7、D加载寄存器堆方式011PR启动程序方式000机器指令名称助记符指令功能指令格式R7R6R5R4R3R2R1R0加 法ADD Rd,Rs Rd+Rs-Rd0000RS1RS0RD1RD0减 法SUB Rd,Rs Rd-Rs-Rd0001RS1RS0RD1RD0乘 法MUL Rd,RsRd*Rs-Rd0010RS1RS0RD1RD0逻辑与AND Rd,RsRd&Rs-Rd0011RS1RS0RD1RD0存 数STA Rd,RsRd- Rs0100RS1RS0RD1RD0取 数LDA Rd,Rs Rs- Rd0101RS1RS0RD1RD0无条件转移JMP RsRs-PC1000RS1RS0RD1

    8、RD0条件转移JC DC=1PC+D-PC1001D3D2D1D0停机STP暂停运行0110XXXX 设计指令流程图硬布线控制器的指令流程图与微程序控制器的指令流程图基本一致。实验台对每步程序的执行提供的节拍只有四个W1-W4,而控制台指令所需要的节拍要大于四个,这就需要我们在设计时将指令拆分一下,即一个指令占用两步,八个节拍,并能够在后四个节拍实现指令的循环执行。于是,我们加了个ST内部信号作为标志位,当ST=0时,标志执行指令的前四个节拍,当ST=1时,标志执行指令的后四个节拍。注意到只有CLR#到来后的第四拍时ST信号才发生翻转,所以又设了一个SSTO信号作为ST信号的触发信号。具体实现

    9、ST-SSTO模块如下:我们增加了一个标志位RUN,由于按CLR#按钮复位后,实验系统的时序停止在T4,W4,ST的值为0,这样SSTO=!ST&W4的值为1.按QD启动按钮后,由于立即产生T1信号,在T1的上升沿使ST置1,在第一组W1,W2,W3,W4时,ST的值为1,这是我们不希望看到的。增加了标志位RUN后,按CLR#按钮复位,使RUN为0。由于SSTO=!ST*W4*RUN,因此复位后的SSTO=0.按QD启动按钮,在T1的上升沿,使RUN=1。根据SSTO的布尔表达式,在W1,W2,W3时,SSTO=0,直到W4时,才使SSTO=1,由于ST:=CLR#*SSTO#CLR*ST,在

    10、W4过后的下一个T1的上升沿,才使ST置1,从而将控制台操作的两种状态区分开来。设计的控制台指令流程图,机器指令流程图如下: 根据流程图,进行微操作信号的译码并列出时序表 说明:我们将控制台指令KRR,KRD,KWE,KLD,PR分别拆分为KRR1,KRR2,KRD1,KRD2,KWE1,KWE2,KLD1,KLD2和PR1,PR2。每个小指令分别占用W1-W4四个节拍。OUTPUTST=0ST=1KRR1KRD1KWE1KLD1PR1KRR2KRD2KWE2KLD2ALU_BUSAR1_INCW4W4CEL#W1W1W1W1CERW2W2LDAR1W4W4W4W4LDAR2W4W4LDDR1

    11、LDDR2LDERW3LDIRW2W2LDPCW4LDR4W4LRWW1W1W1M1M2M3W4W4M4W4PC_INCPC_ADDRS_BUS#W4S0S1S2SW_BUS#W4W4W4W4W4W1W1,W3SKIPW1W1W1W1W1W2W1W1TJW4W4W4W4W1W4W2,W4WRDW4SSTOW4W4W4W4W4ST=1 PR2OUTPUTPR2ADDSUBMULANDLDASTAJMPJCSTPW3W3W3W3W4ALU_BUSAR1_INCW3W4CEL#W1CERW2W2LDAR1W1LDAR2W2W2W2W2LDDR1W2W2W2W2W2LDDR2W3W3W3W3W3LDE

    12、RW1LDIRW4W4&CLDPCW4W4&CLDR4W3W4LRWW2W2W2W2M1W2W2W2W2W2M2W1M3W4W4&CM4W1PC_INCW4&CPC_ADDW2W2W2RS_BUS#S0S1S2SW_BUS#W2W2W2W2SKIPW4TJW4W4W4W4W4WRDSSTO说明:图中绿色信号代表此时的微操作信号为低有效。 根据表格,列写出每个信号的逻辑表达式,并写出ABEL语言的源程序ABEL语言源代码如下:MODULECompute DECLARATIONSINPUT SWC, SWB, SWA PIN 3.5;IR7, IR6, IR5, IR4 PIN 6.9;MF,T1

    13、, W1,W2,W3,W4, C,CLR PIN 10.17;OUTPUTALU_BUS, AR1_INC, CEL, CER, LDAR1, LDAR2, LDDR1, LDDR2, LDER, LDIR, LDPC, LDR4,LRW PIN 29.41;PC_INC,PC_ADD,RS_BUS,SW_BUS, WRD, SKIP, TJ, M1,M2,M3,M4,S0,S1,S2 PIN 63.76;TEMPMF1,SSTO NODE ISTYPE COM;RUN,ST NODE ISTYPE REG;tKRR,tKRD,tKWE,tKLD,tPR NODE ISTYPE COM;KRR

    14、1,KRD1,KWE1,KLD1,PR1,KRR2,KRD2,KWE2,KLD2,PR2 NODE ISTYPE COM;ADD,SUB,MUL,AND,LDA,STA,JMP,JC,STP NODE ISTYPE COM;CLK=.C.;EQUATIONSMF1=!CLR&MF#T1&CLR;RUN:=CLR;RUN.CLK=MF1;ST:=CLR&SSTO#CLR&ST;ST.CLK=MF1;SSTO=!ST&RUN&W4;“指令译码部分tKRR=SWC&!SWB&!SWA;tKRD=!SWC&!SWB&SWA;tKWE=!SWC&SWB&!SWA;tKLD=!SWC&SWB&SWA; t

    15、PR=!SWC&!SWB&!SWA;KRR1=!ST&tKRR;KRR2=ST&tKRR;KRD1=!ST&tKRD;KRD2=ST&tKRD;KWE1=!ST&tKWE;KWE2=ST&tKWE;KLD1=!ST&tKLD;KLD2=ST&tKLD;PR1=!ST&tPR;PR2=ST&tPR;ADD=PR2&(!IR7)&(!IR6)&(!IR5)&(!IR4);SUB=PR2&(!IR7)&(!IR6)&(!IR5)&(IR4);MUL=PR2&(!IR7)&(!IR6)&(IR5)&(!IR4);AND=PR2&(!IR7)&(!IR6)&(IR5)&(IR4);LDA=PR2&(!I

    16、R7)&(IR6)&(!IR5)&(IR4);STA=PR2&(!IR7)&(IR6)&(!IR5)&(!IR4);JMP=PR2&(IR7)&(!IR6)&(!IR5)&(!IR4); JC=PR2&(IR7)&(!IR6)&(!IR5)&(IR4);STP=PR2&(!IR7)&(IR6)&(IR5)&(!IR4);“输出管脚ALU_BUS=(ADD#SUB#MUL#AND)&W3#(STA&W4);AR1_INC=(KRD2#KWE2)&W4;CEL=!(KRD2#KWE2#KLD2#KRR2)&W1#(W3&LDA)#(W4&STA);CER=(KLD2#KRR2)&W2#(W1&PR

    17、2);LDAR1=W4&(KRR1#KRD1#KWE1#KLD1)#(W2&LDA)#(W2&STA);LDAR2=W4&(KRR1#KLD1)#(PR2&W1);LDDR1=W2&(ADD#SUB#MUL#AND);LDDR2=LDDR1#(W2&STA);LDER=W3&(KLD2#ADD#SUB#MUL#AND#LDA);LDIR=CER;LDPC=W4&(PR1#JMP#(JC&C);LDR4=LDPC;LRW=W1&KRD2#W3&LDA;M1=!LDDR1;M2=!LDDR2;M3=W4&(KRR1#KLD1);M4=W4&(PR1#JMP);PC_INC=W1&PR2;PC_AD

    18、D=W4&JC&C;RS_BUS=!(W2&(LDA#STA)#W4&(KRR2#JMP);SW_BUS=!(W1&(KWE2#KLD2#KRR2)#(W3&KLD2)#(W4&!ST);S0=SUB#STA;S1=ADD#SUB;S2=MUL;SKIP=W1&!ST#(W1&(KRD2#KWE2)#(W2&(KRR2#STA)#W2&(JMP#JC#STP);TJ=W1&KRD2#W2&KLD2#W4&(tKRR#tKWE#tKLD)#W4&STP;WRD=W4&(KLD2#ADD#SUB#MUL#AND#LDA);END 对程序进行编译,无误后下载到芯片 连线,调试,验收连线表格如下:SW

    19、C3InputPULLUPLDDR135OutputPULLUPSWB4LDDR236SWA5LDER37IR76LDIR38IR67LDPC39IR58LDR440IR49LRW41MF10PC_INC63T111PC_ADD64W112RS_BUS65W213SW_BUS66W314WRD67W415SKIP68C16TJ69CLR17M170ALU_BUS29OutputPULLUPM271AR1_INC30M372CEL31M473CER32S074LDAR133S175LDAR234S276验收程序:地址指令机器代码00HLDA R0 R258H01HLDA R1 R35DH02HA

    20、DD R0 R104H03HJC +595H04HAND R1 R031H05HSUB R0 R31CH06HSTA R0 R144H07HMUL R0 R124H08HSTP60H09HJMP R184H初始化:寄存器存入内容R260HR361H内存单元存入内容60H24H61H83H计算结果:内存单元内容60H46H61H83HR012H 设计中遇到的问题 关于时钟源工作过程的分析:时钟源产生基本的时序控制信号。在设计的过程中,我们发现在同一个节拍下每个信号的起作用的T时刻是不同的,如KWE2的W1节拍下,CEL#0,LRW=0,在T3的上升沿将DBUS上的数据写入RAM中,可是同时SKI

    21、P信号也是有效的,于是我们在想:会不会因为SKIP信号在T1时就有效导致信号直接由当前脉冲的T1跳到W4,这样DBUS上的数据还未来得及写入RAM就已经无效了,与此类似的还有TJ信号。所以在一开始设计的时候我们将SKIP信号和TJ信号统统控制在T4时刻才出现,可是这样做使得控制信号的逻辑显得有些乱。经过查找资料并分析了时序发生器的ABEL语言源文件得知当SKIP信号有效时,发生器仍然发送完当前节拍的所有信号才跳到W4节拍;当TJ信号有效时,发生器仍然发送完当前节拍的所有信号,最后停在当前节拍的T4时刻。 标志信号RUN的分析及测试由控制台指令流程图可知一条控制台指令被分割成了两部分,一部分可以

    22、看作是指令执行的初始化(如选定中转地址,指定初始地址等),另一部分看作是指令的执行阶段(可以循环执行)。每条指令执行时第一部分只执行一遍,第二部分是循环执行的,所以要保证ST信号第一遍执行时为0,之后保持为1。 该部分实现图如下所示:CLRCLR&SSTO#CLR&ST!CLR&MF#T1&CLRMF1=!CLR&MF#T1&CLR;RUN:=CLR;RUN.CLK=MF1;ST:=CLR&SSTO#CLR&ST;ST.CLK=MF1;SSTO=!ST&RUN&W4;代码说明:当按一下CLR时将使得RUN和ST都变为零,且时序停留在W4,T4时刻,由于RUN0,所以虽然在W4时刻,但是SSTO

    23、信号仍然为零,是无效的启动程序后,在第一的T1的上升沿RUN变为1,于是当W41时SSTO1,那么触发器ST的输入也变为1,在下一个T1的上升沿,ST将变为0,控制信号就由流程图的左半部跳至右半部。 实验心得这是我们第一次做课程设计,学校给我们提供了实验环境,一流的实验设施,还配备了尽责热心的老师,我们有十分充足的时间来学习和设计。开放性的实验环境也为我们发挥自己的创造力提供了充分的条件。在这里我们不仅学到了许多在课堂上学不到的东西,而且锻炼了我们的动手和实践能力。 首先,这次课程设计是对计算机组成原理课程的加深和延续,很多内容虽然课本上没有详细讲解,但是很多东西是融会贯通的。如果没有对微程序

    24、控制器的工作方式和原理的理解,哪能设计出硬布线控制器的控制逻辑。所以这次实验,我们对计算机的工作原理有了更进一步的了解,尤其是指令系统的工作原理,各个部件的工作之间的协调和配合等。 同时,这次课程设计大大锻炼了我们的动手能力,由于是手工接线,任何一条线出现问题都会影响到整个系统的执行,所以当问题变得莫名其妙毫无头绪之时,保持清醒的头脑,冷静的分析变得尤为重要。不仅如此,设计过程中团队的合作精神也得到了锻炼,一个大的项目不是一个人能够独立承担的,需要大家的通力合作。 葛立峰0112109班10号表面上看,本次实验仅仅是要我们设计一个具有5条控制台指令9条机器指令的硬布线控制器,实际上却需要我们综合运用以往所学的很多关于计算机硬件的知识。就本实验所考察的知识重点,我总结了一下,大致如下: 触发器的原理及应用 ABEL语言的应用及ispEXPERT的使用 指令周期的概念 时序产生器的原理和控制方式 TEC-4实验台的原理和操作本次实验不仅仅需要我们动脑,更重要的是要求我们动手。由列出微操作信号到指令流程图再到ABEL语言的源代码的实现,其间过程并不很难,复杂的是连线与调试,需要极大的耐


    注意事项

    本文(组成原理课程设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开