没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第 37卷
、,01.37
第 5期
NO.5
计 算 机 工 程
Computer Engineering
2011年 3月
M arch 201l
·
开发研究与设计技术 · 文章编号:10o -I3428(2o11)o5— 279—.03 文献标识码:A 中圈分类号:N945
基 于 Proteus的处理器 C++建模 与仿真
杨 鸿,周晓方,杨庆庆
(复旦大学专 用集 成 电路 与系统 国家重 点实验 室 ,上海 201203)
摘 要 :研究利 用 c++创建 Proteus模 型的方法 ,实现一个基于 Proteus的 自定义指令集仿真器模型 ,构建该模 型的虚拟板级系统 ,并进行
测试 。实验 结果表 明 ,基于 Proteus的处理 器仿真器能在芯片 RTL模 型面世前构建虚拟板级系统 ,为芯 片的功能测试提供更方便直观 的平
台,有 利于芯 片早期开发 的软硬件协 同设计。
关键词 :处理器仿 真器;Proteus模型 ;c++建模 ;虚 拟板 级系统仿真
C++ M odeling and Sim ulation 0f Processor Based 0n Proteus
YANG Hong,ZHOU Xiao-fang,YANG Qing-qing
(State Key Laboratory of ASIC& System,Fudan University,Shanghai 211 1 203,China)
[Abstract]A Proteus simulation model for a processor with self-defined instruction set is implemented based on the study of Proteus c++
programming interface.The instantiated m odel is merged into and further tested with a virtual board level system .By m odeling processor with
Proteus,designer can kick off board level simulation far before the fabrication of a real processor chip,and carl have a convenient verification tools,
and start hardw are—software co—design in very early stages
[Key wordsI processor simulator;Proteus model;c++modeling;virtual board level system simulation
Doh 10 3969/j.issn 1000—3428.2011.05.095
1 概述 ’
随着芯片体系结构复杂性 的增 加,系统结构早期建模 已
成为软硬件协同设计 中一个必 不可少 的环节。不 同的设计 目
标对 于系统结构的早期模型要求也不 同。例如 ,PreProS…实
现了对部 分动态可 重构 处理 器的仿真 ;ReSim[2j能够对 复杂指
令级 并行 (ILP)处理器 的操作进行仿真 ,从而 使其得到简化 ,
提高了工 作频 率。而在嵌入式处理器的早期开发 过程中 ,不
仅需 要对 处理器 自身进行仿真 ,还需要足够 的外设与该 处理
器兼容 ,在 处理器 硬件 设计的 同时开发相应 的软件 ,加快 整
个嵌入式系统 的开发流程 。
基于 Verilog 的建模仿 真方法 ,可以在设计早期 ,通过
PLI接 口和 C语 言模型进行混合仿真 ;SystemCI41可 以通过
添加外部仿真单元 实现 全部系统仿真。但是 ,它们都不能满
足仿真器板级系统对于外设 的要求 。
Proteus很好地解决 了这一 不足 ,它提供 了大量 的模型和
虚拟测试仪器 ,具有软硬件 调试 、原 理图编辑及原理 图后处
理功能。能够利用 c++创建所需 的模型 ,构建虚拟板级系统 ,
真正使在 RTL 模 型出来前对这 类设 计的开发 和测 试成为可
能 ,且更加简单直观 。所建模型以二进制文件(.d11)形式保存 ,
有助于保 护设 计者 的源码 。
本文 介绍利用 c++创建 Proteus模 型,通 过动态链接库
(DLL)规定模 型 电气特性 和模 型实例化 的方法 ,实现一个 自
定义指令集处理器(SDRP)的仿真器模型(简称 SDRPSim),并
在虚拟板级进行 SDRPSim 的功能测试 ,实现在芯片 RTL模
型 出来之前的软硬件协 同设计 。
2 SDRP简介
2.1 自定义指令集
SDRP是一个 1 8位指令 宽度 、16位数据通道 宽度 的 RISC
结构处理器。该指令集系统结构(ISA)提供 l6个 16位的通用
寄存器 ,8个 16位 的特殊 寄存器 ,且 15号寄存器(rl5)的值
总是 0。寻址 方式包括立即数寻址 ,寄存器 加偏移 量寻址。
存储器寻址要求对象必须是 16位字边界对齐的 ,指令和数据
的寻址空 问均为 64 KB。
ISA 的编码采用 固定长度编码方式 ,按指令格式分为以
下 5种 :
(1)寄存器一立即数型(RI~type):用于 立即数的算术/逻辑运
算、寄存器赋值和对外设数据 的存取 ,立即数的宽度根据指
令的不 同在 5 bit-8 bit的范围内。
(2)寄存器一寄 存器 型(RR—type):用于数据存取、各种 逻辑
运算和寄存器 之间的跳转。
(3)寄存器 一寄存器一寄存器型(RRR type):用于寄存器一寄
存器 的算术/逻辑运算 ,指出了运 算的操作 寄存器和 目标寄存
器 。寄存器可 以是通用寄存器、特殊寄存器 或者外设接 I3中
的一些寄存器 。
(4)寄存器一立 即数一寄存器型(RIR—type):用于 内存存取 中
的寄存器偏移寻址 。
(5)立即数型(I—type):用于条件相对跳转 ,偏移地址范围
相对 当前 PC值 为一255~+256。
2.2 SDRP的软件开发工具链
为了使仿真器测试 向量 的生成更 加简 单有效 ,利用一套
指令集的软件开发工具链。工具链的框架如图 1所示 。
基金项 目:国家 自然科学基金资助项目(60876016);专用集成 电路与
系统国家重点实验室基金 资助项 目(ZD20080103,09ZD002);宁波 市
自然科学基金资助项 目(2009A6 1 0059)
作者简介:杨 鸿(1987--),男,硕士研究生,主研方向:数字集成
电路 ,嵌入式处理器 ;周晓方(通讯 作者),高级工程师、博士;杨庆庆,
硕 士研究生
收稿 日期 :2010—08—28 E-mail:xiaofangzhou@fudan.edu.cn
资源评论
数据资源
- 粉丝: 110
- 资源: 23万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功