CN100422953C - 利用HDL扩展串口的SoC系统在线调试方法 - Google Patents

利用HDL扩展串口的SoC系统在线调试方法 Download PDF

Info

Publication number
CN100422953C
CN100422953C CNB2005101355280A CN200510135528A CN100422953C CN 100422953 C CN100422953 C CN 100422953C CN B2005101355280 A CNB2005101355280 A CN B2005101355280A CN 200510135528 A CN200510135528 A CN 200510135528A CN 100422953 C CN100422953 C CN 100422953C
Authority
CN
China
Prior art keywords
debugging
serial ports
soc
expansion
serial
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
Application number
CNB2005101355280A
Other languages
English (en)
Other versions
CN1991784A (zh
Inventor
陈波涛
马依迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing CEC Huada Electronic Design Co Ltd
Original Assignee
Beijing CEC Huada Electronic Design Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing CEC Huada Electronic Design Co Ltd filed Critical Beijing CEC Huada Electronic Design Co Ltd
Priority to CNB2005101355280A priority Critical patent/CN100422953C/zh
Publication of CN1991784A publication Critical patent/CN1991784A/zh
Application granted granted Critical
Publication of CN100422953C publication Critical patent/CN100422953C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本文发明了一种可以实现SoC系统在线调试的方法。在SoC(System on Chip)及嵌入式系统程序开发过程中,将已有IP核的串口资源进行扩展,并设置选择,利用FPGA可重复配置的便利性,使得用户可以根据FPGA仿真板的结构任意选择目标系统的调试方式,即JTAG方式或者串口方式。当选择串口方式调试时利用扩展的串口,不占用目标系统的串口资源。当程序调试完毕可以即时将程序写入目标存储器中。这样在使用不同IP核时即可以有针对的选择程序调试方式,实现了在线调试的同时又不会占用目标系统的串口资源,提高了程序调试效率。

Description

利用HDL扩展串口的SoC系统在线调试方法
技术领域
本发明涉及嵌入式MCU仿真系统领域,尤其涉及到利用FPGA系统灵活进行软件在线调试的方法。
背景技术
随着IC设计的发展,工艺、成本的变化,SoC的验证已经变得越来越重要了,特别是利用FPGA进行原型验证(Prototyping),已经逐渐成为成功的SoC设计不可缺少的环节。
在包含MCU(ARM、51单片机)的SoC嵌入式软件调试过程中,使用JTAG调试是最常用的调试方法,JTAG调试属于完全非插入式(即不使用片上资源)调试,它无需占用目标存储器,也不占用目标系统的任何端口,通过MCU的JTAG边界扫描口调试设备。当然,这需要处理器支持JTAG调试方式,是一种硬件实时的在线系统调试。
对于不支持JTAG在线调试方式的MCU通常使用串口方式调试,大多数单片机只提供两个通用串口,当调试应用程序时需占用其中一个通用串口与主机PC通信,一般通过驻留监控软件(Monitor)完成数据交互,由调试软件发布命令通知驻留监控软件控制程序的执行、读写存储器、读写寄存器、设置断点等。采用串口调试结合相应的调试软件可以大大提高调试效率。但是如果对于需要同时使用2个串口的应用情况则这种调试便无法进行了,比如开发者可能使用一个串口进行485通信,而另一个串口调试红外设备,这种情况下就无法进行系统在线调试,无法监控软件的运行情况、MCU内部寄存器情况等。
因此需要设计一种新型的SoC系统在线调试的方法,不占用原SoC已有的串口资源,且具备一定的灵活性,可以根据仿真PCB板的结构选择调试方式,实现程序的连续运行、单步、设置断点等功能。
发明内容
本发明的目的在于提供一种灵活的SoC系统在线调试方法,将原有的IP串口资源进行扩展,再将HDL代码综合并下载到FPGA里,使得在SoC原型验证阶段可以方便的使用JTAG方式或者扩展的串口进行调试程序,扩展的串口与通用串口功能相同,可以设置波特率,使得开发者在调试应用程序的同时能使用原IP的两个串口。
本发明的目的是这样实现的:实现系统在线调试,通过扩展的串口与主机进行通信,应使扩展的串口与原有的通用串口具有相同的功能,包括编写串口逻辑电路,定义MCU中的特殊寄存器作为串口的收发寄存器,定义MCU中的串口中断向量,增加波特率发生器,编写驻留程序(Monitor-51)与调试器(u-Vision)接口的初始化程序。对于支持JTAG调试的MCU IP核,将其JTAG控制逻辑与MCU分离,设置一根选择信号线,增加选择通路,可以在FPGA仿真板上通过选择高低信号,设置成JTAG或者串口调试(Serial-plus),选择JTAG方式时,扩展串口的资源同样对用户开放,包括收发寄存器、中断向量,也可根据用户定制不使用扩展的串口,这样可以将扩展串口的收发寄存器,中断向量留作他用。
本发明还具有以下特征:扩展的串口在使用时可以自适应波特率设置,用户只需写好Monitor-51的初始化程序后便可以以一定波特率与主机通信,可以通过连续运行、设置断点、单步方式调试程序。
与现有的技术相比,本发明的有益效果在于:既保证了调试的效率,确保了在线调试的真实性,又增加了调试的灵活性,充分利用了FPGA大容量、可配置性的特点,为用户SoC系统原型验证提供了便利条件,用户无需更改外围电路,只需配置调试方式,编写HDL代码,并下载到FPGA中即可。特别是对于不支持JTAG调试的MCU核,如果外围电路需要用到两个串口时,外围电路器件不便于改造,要使得两个串口都具有调试能力,需要为每一个串口都设置监控驻留程序,浪费了FPGA的RAM资源(通常Monitor-51需要16K的RAM资源),若采用扩展的串口,可以只为调试程序配备一套监控驻留程序,这样极大的方便了应用程序的调试,降低了开发成本。
附图说明
图1是有关本发明实施中采用扩展的串口或JTAG调试方式示意图。(其中,虚线的部分为扩展的部分。)
PS(Port Select):端口选择逻辑。
Download Cable:包括RxD、TxD、Gnd线
图2是SoC内部资源配置情况和调试器软件配置示意图。
SCON_PLUS:串口控制寄存器。
SBUF_PLUS:串口数据缓冲寄存器。
BG(Baud Generator):波特率发生器。
Intr Plus:扩展的串口逻辑电路。
JTAG:JTAG调试控制电路。
具体实施方式
下面结合附图对本发明作进一步描述。
在进行系统程序调试时,首先完成SoC系统的硬件设计,然后设计相应的软件,编写开发工具与目标系统的接口程序和初始化程序。在硬件设计阶段,首先要增加串口电路。请配合参阅图1所示,还需要对包含JTAG控制器的电路进行改造,使其与串口能够构成选择机制,这可以方便的通过增加选择器来实现。扩展的串口电路支持同步和异步工作模式,同步工作时,由CPU产生串行时钟,串口工作在半双工模式下,异步工作时,串口工作在全双工模式,在8051核中设置一个串口数据缓冲寄存器SBUF_PLUS,参照图2所示,使得软件在读当前数据之前该串口可以接收新数据。同时设置一个串口控制寄存器SCON_PLUS,使得软件对该串口完全可控,定义各位分别为Serial-plus mode,receive enable,定义在传输模式2和3下第9数据位,发送中断标志,接收中断标志。最后,设计波特率发生器,对于核内已有的串口0可以使用Timer1或者Timer2产生波特率,串口1可以使用Timer1产生波特率,对于扩展的串口Serial-plus,添加一路计数器来完成波特率产生,不占用Timer1和Timer2。
硬件仿真完毕,功能正确后,开始软件设计,最重要的是要增加初始化文件INSTALL.A51中对扩展串口的支持,请参照图2所示。由于使用本发明在调试过程中使用的是Keil软件开发工具,默认的调试通道是串口0或串口1,用户只需确定对应硬件的串口入口,在本发明中应利用INSTALL batch文件来配置硬件,如串口类型、Monitor-51使用的xdata的位置,Monitor-51程序代码的起始位置。并且在INSTALL.A51中应声明SCON_PLUS和SBUF_PLUS的地址,和中断入口,并告知是否检测prom在系统中。MON_BANK.A51仍使用默认值。然后在工程中加入STARTUP.A51就可以对编好的代码进行编译,调试应用程序了。
当设计者的原型验证板周边器件变化时,可以通过选择信号,更换调试接口,用户需要做的只是重新下载bit码流到FPGA中,连接主机和调试板的接口信号线,就可以实现在线调试方式的转移。保证了调试效率,又节省了一定的硬件开销。

Claims (4)

1. 一种利用硬件描述语言HDL扩展串口的片上系统SoC系统在线调试方法,将已有的微控制器MCU知识产权IP核的串口资源进行扩展,包括扩展知识产权IP核内相应的寄存器资源、中断向量及控制信号,设置选择机制和波特率发生器,用于带有嵌入式处理器的软件调试,其特征在于:在做现场可编程门阵列FPGA仿真时,设置方便的选择信号,根据该现场可编程门阵列FPGA仿真板与主机个人电脑PC的接口结构选择软件调试方式,对于带有JTAG调试接口的微控制器MCU选择用联合测试行动小组JTAG方式调试应用软件或者在已有的两个串口和扩展串口(Serial-plus Port)之间选择串口方式调试;对于不带联合测试行动小组JTAG方式调试的微控制器MCU,选择已有的两个串口和扩展串口的任意一个进行调试。
2. 如权利要求1所述的一种利用硬件描述语言HDL扩展串口的片上系统SoC系统在线调试方法,其特征在于:调试程序时通过置位选择信号,使得目标系统与主机个人电脑PC通讯采用扩展串口(Serial-plus Port),实现应用软件在线调试。
3. 如权利要求1所述的一种利用硬件描述语言HDL扩展串口的片上系统SoC系统在线调试方法,其特征在于:调试程序时通过置位选择信号,使得目标系统与主机个人电脑PC通讯采用联合测试行动小组JTAG方式,实现应用软件在线调试。
4. 如权利要求1或2所述的一种利用硬件描述语言HDL扩展串口的片上系统SoC系统在线调试方法,其特征在于:使用扩展串口(Serial-plus Port)与主机个人电脑PC通讯,进行软件调试时,波特率可设置,目标系统能够自适应。
CNB2005101355280A 2005-12-30 2005-12-30 利用HDL扩展串口的SoC系统在线调试方法 Expired - Fee Related CN100422953C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101355280A CN100422953C (zh) 2005-12-30 2005-12-30 利用HDL扩展串口的SoC系统在线调试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101355280A CN100422953C (zh) 2005-12-30 2005-12-30 利用HDL扩展串口的SoC系统在线调试方法

Publications (2)

Publication Number Publication Date
CN1991784A CN1991784A (zh) 2007-07-04
CN100422953C true CN100422953C (zh) 2008-10-01

Family

ID=38214055

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101355280A Expired - Fee Related CN100422953C (zh) 2005-12-30 2005-12-30 利用HDL扩展串口的SoC系统在线调试方法

Country Status (1)

Country Link
CN (1) CN100422953C (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751327B (zh) * 2008-12-04 2012-04-18 北京中电华大电子设计有限责任公司 嵌入式处理器的跟踪调试方法
CN101808027B (zh) * 2010-03-31 2011-11-23 哈尔滨工业大学 适用于多种端口的数据接收存储转发装置
CN102520961B (zh) * 2011-12-22 2014-08-27 福州大学 片外在线可编程的soc系统及其控制方法
CN102662811B (zh) * 2012-03-31 2014-08-13 电子科技大学 一种实现对51软核在线应用代码调试的方法
CN102831042A (zh) * 2012-06-26 2012-12-19 珠海市杰理科技有限公司 一种在线调试单片机的系统及其方法
CN104050068B (zh) * 2014-05-23 2016-06-15 北京兆易创新科技股份有限公司 在mcu芯片中调试fpga的方法和装置
CN104503898B (zh) * 2014-11-24 2017-09-01 四川长虹电器股份有限公司 一种嵌入式软件调试参数实时查看的方法及系统
CN104898546B (zh) * 2015-05-06 2017-07-14 浙江中控研究院有限公司 一种基于soc的plc在线调试系统和方法
CN105786576B (zh) * 2016-03-17 2019-06-04 硅谷数模半导体(北京)有限公司 基于串口的芯片调试方法和装置
CN106126211A (zh) * 2016-06-17 2016-11-16 山东超越数控电子有限公司 一种支持调试接口的mcu在线编程系统
CN109656772A (zh) * 2018-12-14 2019-04-19 中国航空工业集团公司西安航空计算技术研究所 一种无智能芯片接口模块的在线调试方法
CN111090584A (zh) * 2019-11-25 2020-05-01 大唐半导体科技有限公司 一种fpga平台ip原型快速验证方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185732B1 (en) * 1997-04-08 2001-02-06 Advanced Micro Devices, Inc. Software debug port for a microprocessor
CN2650232Y (zh) * 2003-09-30 2004-10-20 福建缔邦实业有限公司 具有串口扩展装置的cpu
CN1558334A (zh) * 2004-01-16 2004-12-29 中兴通讯股份有限公司 一种单片机后台调试的系统及方法
CN1661385A (zh) * 2004-02-26 2005-08-31 联想(北京)有限公司 一种jtag模块及应用该模块的调试方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185732B1 (en) * 1997-04-08 2001-02-06 Advanced Micro Devices, Inc. Software debug port for a microprocessor
CN2650232Y (zh) * 2003-09-30 2004-10-20 福建缔邦实业有限公司 具有串口扩展装置的cpu
CN1558334A (zh) * 2004-01-16 2004-12-29 中兴通讯股份有限公司 一种单片机后台调试的系统及方法
CN1661385A (zh) * 2004-02-26 2005-08-31 联想(北京)有限公司 一种jtag模块及应用该模块的调试方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
一种新的可重配置的串口扩展方案. 王海卫,裴先登,谢长生.计算机应用研究,第12期. 2001
一种新的可重配置的串口扩展方案. 王海卫,裴先登,谢长生.计算机应用研究,第12期. 2001 *
高性价比多串口扩展的研究与实现. 宋国明.成都电子机械高等专科学校学报,第2005年第3期. 2005
高性价比多串口扩展的研究与实现. 宋国明.成都电子机械高等专科学校学报,第2005年第3期. 2005 *

Also Published As

Publication number Publication date
CN1991784A (zh) 2007-07-04

Similar Documents

Publication Publication Date Title
CN100422953C (zh) 利用HDL扩展串口的SoC系统在线调试方法
KR101035832B1 (ko) 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템
US6678625B1 (en) Method and apparatus for a multipurpose configurable bus independent simulation bus functional model
US5838948A (en) System and method for simulation of computer systems combining hardware and software interaction
CN105573800B (zh) 一种基于zynq的单板或多板系统及在线更新方法
CN100476837C (zh) 一种支持随机指令测试的微处理器fpga验证装置
CN100565472C (zh) 一种适用于多处理器核系统芯片的调试方法
US5911059A (en) Method and apparatus for testing software
EP1797512B1 (en) Accelerated hardware emulation environment for processor-based systems
CN103412834B (zh) 一种单soc芯片及单soc芯片多工作模式的复用方法
US6571204B1 (en) Bus modeling language generator
KR101460665B1 (ko) 메모리 인터페이스를 사용한 SoC 디바이스 검증 모델
CN102521444A (zh) 软硬件协同仿真/验证方法及装置
WO2005078583A1 (en) Chip design verification apparatus and method
JP2004227588A (ja) Sdioカード開発システム
US6810373B1 (en) Method and apparatus for modeling using a hardware-software co-verification environment
CN103793263B (zh) 一种基于PowerPC处理器的DMA事务级建模方法
CN108011878A (zh) 面向多用户软硬件设计项目的远程测试仿真系统和方法
US20050144436A1 (en) Multitasking system level platform for HW/SW co-verification
US7228513B2 (en) Circuit operation verification device and method
CN113326670A (zh) 原型验证系统、方法、处理单元、及设备
JP2007058813A (ja) 検証装置及び検証方法
US9581643B1 (en) Methods and circuits for testing partial circuit designs
JP4589255B2 (ja) ハードウェア/ソフトウェア協調検証装置
JP2013020425A (ja) オープンソースソフトウェアを利用したハードウェア・ソフトウェア協調検証方法

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
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: Beijing City, Chaoyang District Lize two Road No. 2, Wangjing science and Technology Park A block five layer

Patentee after: Beijing CEC Huada Electronic Design Co., Ltd.

Address before: Beijing city Chaoyang District District No. 1 Gaojiayuan

Patentee before: Beijing CEC Huada Electronic Design Co., Ltd.

C56 Change in the name or address of the patentee
CP02 Change in the address of a patent holder

Address after: 102209 Beijing, Beiqijia, the future of science and technology in the south area of China electronic network security and information technology industry base C building,

Patentee after: Beijing CEC Huada Electronic Design Co., Ltd.

Address before: 100102 Beijing City, Chaoyang District Lize two Road No. 2, Wangjing science and Technology Park A block five layer

Patentee before: Beijing CEC Huada Electronic Design Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081001

Termination date: 20171230

CF01 Termination of patent right due to non-payment of annual fee