CN101308521B - 模拟器和模拟方法 - Google Patents
模拟器和模拟方法 Download PDFInfo
- Publication number
- CN101308521B CN101308521B CN2008100971147A CN200810097114A CN101308521B CN 101308521 B CN101308521 B CN 101308521B CN 2008100971147 A CN2008100971147 A CN 2008100971147A CN 200810097114 A CN200810097114 A CN 200810097114A CN 101308521 B CN101308521 B CN 101308521B
- Authority
- CN
- China
- Prior art keywords
- hardware
- register
- peripheral hardware
- software section
- hardware components
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2117/00—Details relating to the type or aim of the circuit design
- G06F2117/08—HW-SW co-design, e.g. HW-SW partitioning
Abstract
本发明提供一种用于验证具有公共硬件结构的多元产品的模拟器以及模拟方法,其中能够重新使用的外围硬件由硬件组成以及其它外围硬件由软件模拟器组成。模拟器包括:硬件部分,包括具有CPU和OS自身操作所需结构的外围硬件配置;软件部分,将不同于组成所述硬件部分的硬件的外围硬件的操作模拟为外围硬件模型;以及接口板,连接所述硬件部分与所述软件部分。
Description
技术领域
本发明涉及一种模拟器和模拟方法,其用于验证具有公共硬件结构的多元产品,更具体地讲,涉及这样一种模拟器,其中可重新使用外围硬件由硬件组成以及其它外围硬件由软环模拟器组成。
背景技术
在验证将要推上市场的目标产品时,期望生产该目标产品自身并且对它进行验证。然而,就生产成本和产品工时来讲,通常使用目标产品的模拟器进行操作验证。为了以低成本执行目标产品的验证操作,已知有一种由硬件模拟器和软件模拟器组成的模拟器,其中硬件模拟器对该目标产品的硬件结构部分进行模拟,软件模拟器对该目标产品的其它软件结构进行模拟。
另外,已知一种硬件加速系统,其将要进行模拟的硬件逻辑写入FPGA(现场可编程门阵列)从而使得硬件逻辑在FPGA上执行(参照例如专利文献1:日本专利申请公开No.2003-223476)。
然而,在由硬件模拟器和软件模拟器组成的模拟器中,每当目标产品的硬件结构改变时,硬件模拟器需要进行改变,从而硬件模拟器不能够进行重新使用并且由此不能够实现有效低成本目标。
另外,专利文献1的硬件加速系统中,每当目标产品的硬件结构改变时,硬件结构中的所有硬件逻辑需要被写入FGPA中。
发明内容
本发明可以解决以上问题,并且本发明的目的在于提供用于验证具有公共硬件结构的多元产品的模拟器及模拟方法,其中,能够重新使用的外围硬件由硬件组成以及其它外围硬件由软件模拟器组成。
为了解决以上问题,根据本发明的一个方面,提供了一种模拟器,包括:硬件部分,包括具有CPU和OS独立操作所需结构的外围硬件配置;软件部分,根据外围硬件模型模拟除组成所述硬件部分的硬件之外的外围硬件的操作;以及接口板,将所述硬件部分与所述软件部分连接。
以上模拟器中,所述接口板经由PCI板连接到所述软件部分。
另外,以上模拟器中,所述接口板经由总线连接到所述硬件部分。
为了解决以上问题,根据本发明的一个方面,提供了一种模拟方法,其通过接口板连接硬件部分和软件部分而执行模拟,其中所述硬件部分包括具有CPU和OS独立操作所需结构的外围硬件配置,所述软件部分根据外围硬件模型模拟除组成所述硬件部分的硬件之外的外围硬件的操作。
另外,以上模拟方法中,所述接口板经由PCI板连接到所述软件部分。
另外,以上模拟方法中,所述接口板经由总线连接到所述硬件部分。
根据本发明,通过由硬件组成能够重新使用的外围硬件以及通过由软件模拟器组成其它外围硬件,以对具有公共硬件结构的多元产品进行验证,从而能够以低成本执行模拟。
附图说明
图1示出根据本发明实施例的模拟器结构;
图2示出寄存器的分配功能以及寄存器之间对应关系;以及
图3示出本发明实施例中的处理步骤。
具体实施方式
下面将对照附图描述本发明的实施例。本实施例假定一种对未压缩图像数据应用JPEG压缩的模拟器。
图1示出了根据本实施例的模拟器结构图。
模拟器5包括CPU板10(硬件部分)、PCI板20以及PC 30(PC:个人计算机(软件部分)),其中PCI板20用作接口板,PC 30用作模拟外围硬件的操作的外围硬件模拟器。
CPU板10是至少设置有CPU的印刷线路板。本实施例中的CPU板作为最小结构包括CPU 101、存储器102(RAM、ROM)、定时器控制器104、中断控制器103、PLL、以及RSET,其中定时器控制器104用于执行时间管理,中断控制器103用于对CPU 101产生中断请求信号,PLL是相位同步电路,RSET是复位电路。
PCI板1是接口板,用于连接CPU板与PC 30从而用作它们之间的中间缓冲器。PCI板1包括双端口存储器20,双端口存储器20既可以对CPU板进行访问也可以对PC 30进行访问。双端口存储器20包括寄存器201、控制电路202、DMAC 203以及发送/接收缓冲器204。
PC 30包括外围硬件模型301(图1中表达为“H/W模型”)和配置文件303,用于对图像数据应用JPEG压缩,这些集合(图1中表达为“外围H/W A、外围H/W B、......、”)被模拟为外围硬件。PC30还包括装置驱动器302,装置驱动器302控制所有模拟硬件的数据的输入/输出以及PCI板20的操作。
本实施例中的寄存器201既用作中断事件产生寄存器又用作中断/等待事件产生寄存器。下文中描述当访问寄存器这些功能时的情况下执行的操作。
当对分配了中断事件产生寄存器201的功能的预定地址范围内的地址进行访问时,PCI板1将中断的产生通知外围硬件模型301。分配了中断事件产生寄存器201的功能的所述地址范围内设置的值的初始值被设置为0,这表示没有产生中断。
当对分配了寄存器201的中断/等待事件产生寄存器的功能的预定地址范围内的地址进行访问时,PCI板1将中断的产生通知外围硬件模型301。同时,CPU 101被设置“等待”状态,直到从外围硬件模型301发出等待模式的释放的指令。分配了作为中断/等待事件产生寄存器的功能的所述地址范围内设置的值的初始值被设置为0,表示没有产生中断和“等待”。
图2示出本实施例中执行JPEG压缩处理的寄存器201的功能分配。
概况数据寄存器(profile data register)、传送源地址/尺寸寄存器、以及传送目的地址/尺寸寄存器存储用于执行JPEG压缩处理的配置信息,配置信息从CPU 101发送到外围硬件模型301。本实施例中,JPEG压缩率数据存储在概况数据寄存器中。
控制寄存器是用于控制诸如启动变换操作的JPEG压缩处理的寄存器。操作状态寄存器是用于存储外围硬件模型301的处理状态(诸如操作和变换错误期间内的处理状态)的寄存器。
如图2的“寄存器的功能分配”所示,本实施例中,概况数据寄存器的起始地址是“100”,传送源地址/尺寸寄存器和传送目的地址/尺寸寄存器的起始地址分别是“104”和“108”。控制寄存器的起始地址是“10C”,操作状态寄存器的起始地址是“110”。
另外,如“寄存器之间的对应关系”所示,中断事件产生寄存器被分配“10C”到“10F”,中断/等待事件产生寄存器被分配“110”到“113”。结果,当对控制寄存器(起始地址是“110”)进行访问时,对外围硬件模型301产生了中断事件;而当对操作状态寄存器(起始地址是“110”)进行访问时,对外围硬件模型301产生中断事件,并且对CPU 101产生等待事件。
接下来,将对照图3描述本实施例中的JPEG压缩处理。
首先,PCI板1预先将配置文件303的信息加载到控制部分202中(步骤S1)。配置文件303存储图2所示信息。
CPU板10将概况数据、传送源地址以及传送目的地址分别存储在寄存器201的概况数据寄存器、传送源地址/尺寸寄存器以及传送目的地址/尺寸寄存器中(步骤S2)。
为了使得外围硬件模型301启动JPEG变换,CPU 101在寄存器201的控制寄存器中设置用于启动JPEG变换的值(步骤S3)。
由于已从CPU 101对被分配作为中断事件产生寄存器的控制寄存器进行访问,PCI板1经由装置驱动器302将中断通知发送到外围硬件模型301(步骤S4)。
当接收到中断通知时,外围硬件模型301确认设置在寄存器201的控制寄存器中的内容。当该数据指示用于启动JPEG变换的值时,外围硬件模型301从寄存器201的概况数据寄存器、传送源地址/尺寸寄存器以及传送目的地址/尺寸寄存器读取概况数据、传送源地址/尺寸以及传送目的地址/尺寸(步骤S5)。
然后,外围硬件模型301将DMA(直接存储器访问)请求发送到PCI板1的DMAC(直接存储器访问控制器)203。当接收到请求时,DMAC 203将未压缩图像数据经由PCI板1的发送/接收缓冲器从CPU板10的存储器102发送到PC 30上的存储器(在此,外围硬件模型301执行JPEG压缩处理)。
然后,外围硬件模型301启动压缩操作并且在寄存器201的操作状态寄存器中设置预先分配的值(步骤S6)。
至于要写入操作状态寄存器中的值,除了指示外围硬件模型301的处理状态(操作期间内的处理状态和变换错误等)的值以外,预先提供指示当前处理是否需要与CPU 101进行同步的值。步骤S6中,假定设置了指示当前处理需要与CPU 101进行同步的值。
为了读取该操作状态,CPU 101访问寄存器201的操作状态寄存器(步骤S7)。
由于已对被分配为中断/等待事件产生寄存器的操作状态寄存器访问并且已设置了指示需要进行同步的值,所以PCI板1经由装置驱动器302将中断通知发送到外围硬件模型301并且使得CPU 101进入等待状态(步骤S8)。
完成需要与CPU 101进行同步的处理以后,外围硬件模型301将操作状态(指示不需要与CPU 101进行同步的值)写入操作状态寄存器中,并且发出等待释放命令(步骤S9)。
接收到等待释放命令时,PCI板1为CPU 101执行等待状态的释放(步骤S10)。CPU 101基于从外围硬件模型301发出的等待释放命令而释放等待状态,并且开始读取外围硬件模型301已写入的操作状态。
PCI板1对CPU 101的等待状态进行释放可以如下进行:在寄存器201中额外提供等待释放寄存器;以及从外围硬件模型301发送的等待释放命令访问该等待释放寄存器。
完成JPEG压缩操作以后,外围硬件模型301读取上述传送目的地址/尺寸并且将DMA请求发送到PCI板1的DMAC 203中。当接收到DMA请求时,DMAC 203经由PCI板1的发送/接收缓冲器将JPEG压缩的图像数据从PC 30上的存储器(在此,外围硬件模型301执行JPEG压缩处理)加载到CPU 101的存储器102中。
外围硬件模型301将指示操作正常完成的操作状态(指示不需要与CPU 101进行同步的值)写入寄存器201的操作状态寄存器中,并且发出中断请求命令到CPU 101(步骤S11)。
可以采用一种结构,其中双端口存储器20的存储器区域被划分成多个区域以用于PC 30上操作的每个外围硬件(外围硬件H/WA、外围硬件H/W B、......),并且以每个划分区域为单位发送用于CPU 101的等待指令以及用于外围硬件模型的中断通知。采用这种结构,可以在多个外围硬件与CPU 101之间建立同步,从而实现以综合方式验证包括多个外围硬件的目标产品。
如上所述,通过使得硬件和硬件模型经由接口彼此合作,在验证具有公共硬件结构的多元产品的模拟器中,能够重新使用的外围硬件由硬件组成以及其它外围硬件由软件模拟组成,从而可以实现节约成本和劳动时间。
Claims (2)
1.一种模拟器,包括:
硬件部分,包括具有CPU和OS自身操作所需结构的外围硬件配置;
软件部分,将不同于组成所述硬件部分的硬件的外围硬件的操作模拟为外围硬件模型;以及
接口板,连接所述硬件部分与所述软件部分;
所述接口板包括双端口存储器,所述双端口存储器包括寄存器、控制电路、直接存储器访问控制器以及发送/接收缓冲器,其中
所述寄存器用于中断事件产生寄存器以及中断/等待事件产生寄存器;
所述直接存储器访问控制器用于把数据从所述硬件部分以DMA方式传输到所述软件部分,以及
所述发送/接收缓冲器用于在所述硬件部分和软件部分之间缓冲数据。
2.一种模拟方法,其通过经由接口板连接硬件部分和软件部分进行模拟,其中所述硬件部分包括具有CPU和OS自身操作所需结构的外围硬件配置,所述软件部分根据外围硬件模型模拟除组成所述硬件部分的硬件之外的外围硬件的操作,
所述接口板包括双端口存储器,所述双端口存储器包括寄存器、控制电路、直接存储器访问控制器以及发送/接收缓冲器,其中
所述寄存器用于中断事件产生寄存器以及中断/等待事件产生寄存器;
所述直接存储器访问控制器用于把数据从所述硬件部分以DMA方式传输到所述软件部分,以及
所述发送/接收缓冲器用于在所述硬件部分和软件部分之间缓冲数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007127922A JP2008282314A (ja) | 2007-05-14 | 2007-05-14 | シミュレータ、シミュレーション方法 |
JP2007-127922 | 2007-05-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101308521A CN101308521A (zh) | 2008-11-19 |
CN101308521B true CN101308521B (zh) | 2010-11-17 |
Family
ID=40028421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100971147A Expired - Fee Related CN101308521B (zh) | 2007-05-14 | 2008-05-14 | 模拟器和模拟方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8150670B2 (zh) |
JP (1) | JP2008282314A (zh) |
CN (1) | CN101308521B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4843554B2 (ja) * | 2007-05-11 | 2011-12-21 | 株式会社東芝 | インターフェイスボード、シミュレータ、同期方法、同期プログラム |
JP5450271B2 (ja) | 2010-06-10 | 2014-03-26 | 株式会社東芝 | シミュレーション装置、シミュレーションプログラム及び方法 |
CN102841837B (zh) * | 2012-06-26 | 2014-07-30 | 中国科学院声学研究所 | 一种基于模拟器的软硬件协同验证方法及系统 |
WO2020067902A1 (en) | 2018-09-24 | 2020-04-02 | TOPRO Industri AS | Wire activated rim brake system for a rollator |
CN109492301B (zh) * | 2018-11-08 | 2020-05-22 | 北京世冠金洋科技发展有限公司 | 软硬件切换方法和系统 |
US10789188B1 (en) * | 2019-02-08 | 2020-09-29 | Facebook, Inc. | Systems and methods for providing semi-custom printed circuit boards based on standard interconnections |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6539497B2 (en) * | 1987-06-02 | 2003-03-25 | Texas Instruments Incorporated | IC with selectively applied functional and test clocks |
US5535331A (en) * | 1987-09-04 | 1996-07-09 | Texas Instruments Incorporated | Processor condition sensing circuits, systems and methods |
US5809309A (en) * | 1990-09-28 | 1998-09-15 | Texas Instruments Incorporated | Processing devices with look-ahead instruction systems and methods |
US5768567A (en) * | 1996-05-14 | 1998-06-16 | Mentor Graphics Corporation | Optimizing hardware and software co-simulator |
US5771370A (en) * | 1996-05-14 | 1998-06-23 | Mentor Graphics Corporation | Method and apparatus for optimizing hardware and software co-simulation |
US6381565B1 (en) | 1998-08-21 | 2002-04-30 | Nec Corporation | Functional logic circuit verification device |
JP3173506B2 (ja) * | 1998-08-21 | 2001-06-04 | 日本電気株式会社 | 機能論理回路検証装置 |
US20020152060A1 (en) * | 1998-08-31 | 2002-10-17 | Tseng Ping-Sheng | Inter-chip communication system |
KR100392569B1 (ko) | 2000-10-28 | 2003-07-23 | (주)다이나릿시스템 | 반도체 칩의 논리 기능 검증용 에뮬레이터 장치 및 방법 |
US6754763B2 (en) * | 2001-07-30 | 2004-06-22 | Axis Systems, Inc. | Multi-board connection system for use in electronic design automation |
WO2003046725A1 (fr) * | 2001-11-30 | 2003-06-05 | Fujitsu Ten Limited | Appareil de mise au point de logique de micro-ordinateur |
JP2003223476A (ja) | 2001-12-05 | 2003-08-08 | Nec Corp | 機能シミュレーションのためのハードウェア・アクセラレーション・システム |
US20030105617A1 (en) | 2001-12-05 | 2003-06-05 | Nec Usa, Inc. | Hardware acceleration system for logic simulation |
US6941538B2 (en) * | 2002-02-22 | 2005-09-06 | Xilinx, Inc. | Method and system for integrating cores in FPGA-based system-on-chip (SoC) |
JP2004252824A (ja) * | 2003-02-21 | 2004-09-09 | Hitachi Information Technology Co Ltd | 回路検証方法、回路シミュレータ、回路検証プログラム |
US7356455B2 (en) * | 2003-11-18 | 2008-04-08 | Quickturn Design Systems, Inc. | Optimized interface for simulation and visualization data transfer between an emulation system and a simulator |
JP4843554B2 (ja) * | 2007-05-11 | 2011-12-21 | 株式会社東芝 | インターフェイスボード、シミュレータ、同期方法、同期プログラム |
-
2007
- 2007-05-14 JP JP2007127922A patent/JP2008282314A/ja active Pending
-
2008
- 2008-04-29 US US12/111,592 patent/US8150670B2/en active Active
- 2008-05-14 CN CN2008100971147A patent/CN101308521B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
Also Published As
Publication number | Publication date |
---|---|
JP2008282314A (ja) | 2008-11-20 |
US20080288233A1 (en) | 2008-11-20 |
US8150670B2 (en) | 2012-04-03 |
CN101308521A (zh) | 2008-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101308521B (zh) | 模拟器和模拟方法 | |
US6948010B2 (en) | Method and apparatus for efficiently moving portions of a memory block | |
US8380481B2 (en) | Conveying data from a hardware device to a circuit simulation | |
CN204595844U (zh) | Usb多电脑切换器 | |
US9454397B2 (en) | Data processing systems | |
US7672828B2 (en) | Memory access to virtual target device | |
CN105224488A (zh) | 一种pci总线控制器及其控制方法 | |
KR20070003954A (ko) | 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템 | |
CN101788947A (zh) | 系统总线的监测方法、系统总线监测器及片上系统 | |
CN101160569A (zh) | 改进具有多个存储器控制器的电路的带宽的设备 | |
CN110704365A (zh) | 一种基于fpga的重构装置 | |
CN101303673B (zh) | 接口板、模拟器、同步方法和同步程序 | |
US10705993B2 (en) | Programming and controlling compute units in an integrated circuit | |
US5862375A (en) | System for effecting communications between a computing device and a plurality of peripheral devices | |
US20080262821A1 (en) | Method, apparatus, and computer program product for dynamically managing simulated addresses | |
CN100440181C (zh) | 计算机外围设备联机处理方法及系统 | |
US7110928B1 (en) | Apparatuses and methods for modeling shared bus systems | |
CN101196859B (zh) | 直接访问存储装置及直接访问存储操作方法 | |
KR101567313B1 (ko) | 임베디드 시뮬레이션 시스템을 위한 영상처리 장치 및 그 방법 | |
CN201936298U (zh) | 相容于pci介面的非同步扩充系统的pci转接卡 | |
CN101135954B (zh) | 一种实现硬盘初始化的方法、装置和系统 | |
JP4819652B2 (ja) | 接続機器制御装置および制御方法 | |
US20220237132A1 (en) | Data transmission method and ping-pong dma architecture | |
TWI526842B (zh) | 應用於x86系統之訊號寫入之控制與切換模組 | |
TW200933373A (en) | ID address setting system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101117 |
|
CF01 | Termination of patent right due to non-payment of annual fee |