当前位置:首页 > 消费电子 > 消费电子
[导读]1 引言随着计算机技术的迅速发展,计算机系统中使用的硬件部件基本上都采用大规模和超大规模集成电路,这些电路的设计、验证和测试必须使用先进的工具软件,使硬件设计逐渐

1 引言

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

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

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

2 基于EDA 技术的计算机硬件系统设计过程

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

2.1 确定指令系统

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

表1 指令系统

 

 

2.2 总体结构与数据通路

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

 

 

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

2.3 状态确定

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

2.4 设计指令执行的流程

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

表2 指令执行流程

 

 

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

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

 

 

图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<=“10100000”;

when others=>

maindata<=“00000000”;

end case;

end if; end process rom16x8;

3.2 CPU功能模块的VHDL实现

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

 

 

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

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

表3工作程序

 

 

进行功能仿真首先需要用ABEL-HDL语言编写独立的测试向量文件:

MODULE model

clk,reset,outport,led,wr pin;

Test_vectors ([clk,reset]->[outport,led,wr]) [.x.,1]->[.x.,.x.,.x.];

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

END

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

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

 

 

图4 仿真结果

结束语

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

参考文献:

1、李山山,汤志忠,周继群。基于FPGA的开放式教学CPU的设计与测试系统[J].计算机工程与应用,2005;14:98-100,198

2、谭会生,张昌凡。EDA技术及应用[M].西安:西安电子科技大学出版社,2001年

3、张楷,汤志忠。通用l6位CPU的设计与实现[J].计算机工程与应用,2003;39(32):ll6-ll7,l8l

4、徐成,等。基于EDA与FPGA技术的数字电路实验与设计[J].电气电子教学学报,2002,24:92-93

5、杨小龙,编着。计算机组成原理与系统结构《实验教程》[M].西安:西安电子科技大学出版社,2004

6、符兴昌。 EDA技术在数字系统设计分析中的应用[J].微计算机信息。2006年,05Z期:267-269,155

7、彭保,范婷婷,马建国。基于Verilog HDL语言的FPGA设计[J].微计算机信。2004,10: 80-82

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2024年4月17日 /美通社/ -- 每年4月17日是世界血友病日。今年,世界血友病日以"认识出血性疾病,积极预防和治疗"为主题,呼吁关注所有出血性疾病,提升科学认知,提高规范化诊疗水平,让每一位出血性疾病患者享有...

关键字: VII 动力学 软件 BSP

伦敦2024年4月16日 /美通社/ -- ATFX宣布任命Siju Daniel为首席商务官。Siju在金融服务行业拥有丰富的经验和专业知识,曾在全球各地的高管职位上工作了19年以上。Siju之前担任FXCM首席商务官...

关键字: NI AN SI BSP

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发是一项综合了硬件设计、软件编程以及系统整合的技术活动,其目的是为了创造出能够在特定环境中高效、稳定运行的嵌入式系统。这一流程涵盖了多个紧密关联且不可或缺的阶段,从最初的客户需求分析到最终的产品测试和交付,每个环...

关键字: 嵌入式开发 硬件设计

在自动化控制领域,驱动器扮演着至关重要的角色。它作为连接控制器与机械执行元件之间的桥梁,将电信号转换为机械动作,从而驱动设备运行。因此,正确进行驱动器接线是确保系统稳定、高效运行的前提。本文旨在详细阐述驱动器接线的标准流...

关键字: 驱动器 计算机硬件

可视化直觉式平台,适用TN- LCD 设计、模拟﹑测试,能加快开发速度

关键字: 微控制器 LCD 布局 硬件设计

中央处理器(Central Processing Unit,简称CPU)是计算机的核心部件,负责执行计算机程序中的指令。随着科技的不断发展,CPU的性能也在不断提高,其技术参数也越来越复杂。本文将对CPU的主要技术参数进...

关键字: CPU 计算机硬件 中央处理器

固态硬盘(Solid State Drive,简称SSD)是一种新型的存储设备,它采用闪存芯片作为存储介质,具有读写速度快、抗震性能好、功耗低等优点。然而,固态硬盘的使用寿命一直是用户关注的焦点。那么,固态硬盘的使用寿命...

关键字: 固态硬盘 计算机硬件

固态硬盘(Solid State Drive,简称SSD)是一种采用固态电子存储芯片阵列制成的硬盘,由控制单元和存储单元(NAND Flash芯片)组成。与传统的机械硬盘(HDD)相比,固态硬盘具有读写速度快、耐用性强、...

关键字: 固态硬盘 计算机硬件
关闭
关闭