计算机硬件系统方案表,基于EDA技术的计算机硬件系统设计方案

news/2024/7/4 7:44:48 标签: 计算机硬件系统方案表

1引言

随着计算机技术的迅速发展,计算机系统中使用的硬件部件基本上都采用大规模和超大规模集成电路,这些电路的设计、验证和测试必须使用先进的工具软件,使硬件设计逐渐趋于软件化,加快硬件设计和调试的速度,计算机硬件作为一个典型的复杂数字系统,其设计方法发生了根本性的变革。EDA(Electronic Design Automation ,电子设计自动化)技术就是一种自动完成将用软件的方式设计的电子系统形成集成电子系统或专用芯片的一门新技术。

TDN-CM++实验装置是计算机组成原理及系统结构课程的专用实验箱,但存在硬件结构基本固定、CPU的各个组成部件全部做好、以验证型的实验为主、学生只需按书中要求拨动相应开关就能完成实验等问题,达不到在整体上把握计算机的基本原理和工作流程的目的,实验效果不尽人意。

根据目前计算机和集成电路技术的发展现状,利用TDN-CM++实验装置上复杂可编程逻辑器件ispLSI1032芯片,设计一个定向型计算机硬件系统,包括运算器、控制器、存储器的设计,以达到弥补实验装置和实验项目不足的目的。

设计一台完整的计算机硬件系统主要经过如下几个阶段:

2.1确定指令系统

该系统的指令系统如表1所示。指令和数据都采用8位表示。源操作数采用存储器直接寻址方式,目的操作数采用隐含寻址。

表1指令系统

7d214bf1e94f00f60b3b3e921b6dab99.png

2.2总体结构与数据通路

该系统总体结构与数据通路如图1所示。

8da63da4876e5a4c4f99217bd8673425.png

图1系统总体结构与数据通路图

2.3状态确定

该系统指令周期是6个时钟周期,前是三个时钟周期即状态S0~S2为指令的读取周期,后3个时钟周期即S3~S5为指令的执行周期。

2.4设计指令执行的流程

该系统指令执行流程如表2所示。

表2指令执行流程

56abfd940808c2a62d941461c3fc01e2.png

2.5编程、调试、运行、仿真

编程、编译、综合所设计的工程文件,建立测试向量进行功能仿真。将生成的JEDEC文件下载至实验仪器的ispLSI芯片中。按设计的线路图进行连线。系统连线图如图2所示。把程序写入内存中。调试运行。

1439ddd5cbd7054945a1314f8a6c0031.png

图2系统连线图

3各功能部件的VHDL源程序

3.1内存ROM功能模块的VHDL实现

对于图1中ispLSI芯片功能图中内存ROM 16X8的功能采用VHDL实现代码如下。

rom16x8: process(ce)

begin

if ce=‘0’ then ——使能端ce为逻辑“0”时,才能进行数据的读取命令。

case addrbus is

when“0000”=》

maindata

maindata[outport,led,wr]) [.x.,1]-》[.x.,。x.,。x.];

@REPEAT 100 {[.c.,0]-》[.x.,。x.,。x.];} [.x.,1]-》[.x.,。x.,。x.];

END

3.2 CPU功能模块的VHDL实现

对于图1 中ispLSI 芯片功能图中内CPU 功能模块的VHDL 实现流程如图3 所示,它是整个模型机的核心。

2a460031ba7c3b5e336f543b9cfc11b3.png

图3 CPU 功能模块VHDL 实现流程

计算机硬件系统的仿真根据ROM的中存放的程序不同,这个模型机完成的操作也就不同,下面将通过建立编写仿真测试向量,来进行逻辑功能仿真,检验设计是否实现了需要完成的功能。 对实现20-6+2运算的工作程序及其在ROM内存映像(起始地址0H)如表3所示:

表3工作程序

296b6ccf3912c37c1391828525fc9595.png

利用上面建立的测试向量文件,其仿真结果如图4所示。

由仿真波形可以看到在执行OUT指令时送出20-6+2的运算结果为1C,同时使输出给OUTPUT DEVICE的信号led=‘0’,wr也由1-》0.在执行HLT指令时run由1-》0,模型机停机。这与理论结果完全相符。

ca7ca33fe07ae3953df69ab9487c65fb.png

图4仿真结果

结束语

作者创新点为:提出了在TDN-CM++实验装置中的复杂可编程逻辑器件ispLSI1032芯片上,设计定向型计算机硬件系统(包括运算器、控制器、存储器)的结构、设计方法及具体实现,弥补了TDN-CM++实验装置的不足,为进一步理解计算机原理和组成以及系统结构方面的知识创造了条件,为嵌入式系统等的应用打好基础。

来源;互联网


http://www.niftyadmin.cn/n/711399.html

相关文章

cocos2d JS-(JavaScript) 静态方法的例子

1 function User(name, age) {2 this.name name;3 this.age age;4 }5 var user new User(angela,26);6 7 User.cloneUser function (user) {//静态方法8 return new User(user.name, user.age);//创建…

CentOS下date命令 - 显示和设置系统日期与时间

显示系统日期 要显示系统日期,只要输入: $ date Thu Dec 5 22:55:41 WIB 2013 格式化显示日期 日期有很多格式。如果你不喜欢默认的格式,你可以换一种格式。你可能会想"为什么我需要改变格式? 默认的输出对我足够了。" 是的,你说的对&#xf…

iframe 父子间传值通信

1、同域 iframe 父子间传值 &#xff08;1&#xff09;父页面 <html> <head><script type"text/javascript">function say(){alert("parent.html");}function callChild(){myFrame.window.say();myFrame.window.document.getElementById…

spring mvc MultipartHttpServletRequest获取页面传入的所有文件

2019独角兽企业重金招聘Python工程师标准>>> 用MultipartHttpServletRequest multipartRequest (MultipartHttpServletRequest) request; 可获取所有页面传入的文件 RequestMapping(value"/shenbao_submit")public ModelAndView shenbao_submit(HttpServ…

计算机病毒的运营消耗cpu,工业计算机CPU使用率过高的原因以及解决方法

原标题&#xff1a;工业计算机CPU使用率过高的原因以及解决方法当工业计算机CPU使用率过高&#xff0c;导致资源不足时&#xff0c;很容易会出现卡死或者长时间等待无响应的情况。这时候我们只能通过手动的方式让工业计算机实现重启&#xff0c;但是如果之前运行的一些数据都没…

PageValidate 类

转载&#xff1a;http://www.cnblogs.com/sufei/archive/2010/01/14/1648028.html using System.Text.RegularExpressions;/// <summary> /// 开发人&#xff1a;苏飞 /// 开发时间&#xff1a;2009-09-11 /// 主要功能&#xff1a;判断页面各个控件的输入 /// </summ…

Redis——事务 锁机制

文章目录&#xff1a; 1.Redis中事务的定义 1.1 案例一&#xff1a;事务中组队成功、提交成功 1.2 案例二&#xff1a;事务中组队阶段报错、提交失败 1.3 案例三&#xff1a;事务中组队成功&#xff0c;提交有成功有失败情况 2.Redis中的锁机制 2.1 悲观锁 2.2 乐观锁 …

Laravel配置session

\Illuminate\Session\Middleware\StartSession::class,\Illuminate\View\Middleware\ShareErrorsFromSession::class, 转载于:https://www.cnblogs.com/unclewang666/p/11153160.html