CN1779653A - 片上系统的片上调试器 - Google Patents

片上系统的片上调试器 Download PDF

Info

Publication number
CN1779653A
CN1779653A CN 200410084598 CN200410084598A CN1779653A CN 1779653 A CN1779653 A CN 1779653A CN 200410084598 CN200410084598 CN 200410084598 CN 200410084598 A CN200410084598 A CN 200410084598A CN 1779653 A CN1779653 A CN 1779653A
Authority
CN
China
Prior art keywords
usb
data
nuclear
debugging device
chip
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.)
Granted
Application number
CN 200410084598
Other languages
English (en)
Other versions
CN100435110C (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.)
Xinhua Microelectronic Co Ltd Shanghai
Original Assignee
Xinhua Microelectronic Co Ltd Shanghai
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 Xinhua Microelectronic Co Ltd Shanghai filed Critical Xinhua Microelectronic Co Ltd Shanghai
Priority to CNB2004100845983A priority Critical patent/CN100435110C/zh
Publication of CN1779653A publication Critical patent/CN1779653A/zh
Application granted granted Critical
Publication of CN100435110C publication Critical patent/CN100435110C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明提出一种适用于高速视频图象处理用SoC的片上调试器。这种片上调试器使用USB1.1或USB2.0作为外接端口与调试主机的USB接口相连,可以达到每秒4百兆比特的数据传输速度,满足视频图象处理用SoC的要求。片上调试器的USB电路部分(称为USB核)可以整合到SoC内,也可以放在SoC外。

Description

片上系统的片上调试器
技术领域
本发明涉及一种片上系统的片上调试器,尤其涉及一种使用USB接口的片上调试器。
背景技术
集成电路芯片可分为4类:1)CPU、2)存储器(Memory)、3)硬化逻辑电路(Hard-wired Logic)和4)模拟电路。过去20年中,这4类芯片不但各自在复杂性和规模上不断发展,并且互相渗透和结合,以致在世纪交替之际出现了所谓的片上系统(SoC:System-On-Chip)。SoC的特征就是单芯片内含有CPU、存储器、硬化逻辑电路和模拟电路这4类电路,具有完整的系统功能。
SoC内都有一个嵌入式CPU,而CPU必须有在它上面运行的软件(由CPU的指令所组成)才能工作,因此CPU上运行的软件的开发和调试是SoC开发和应用的一个不可缺少的环节。为了有效地进行SoC嵌入式CPU的软件的开发和调试,SoC都有一个片上调试器(OCD:On-Chip-Debugger)。OCD可以逐条指令地控制CPU及SoC内其他模块的运行,并把CPU及SoC内其他模块的运行状态(如寄存器和存储器的内容)通过一个外接端口送给SoC外的一个调试主机。OCD也能把调试主机上编译好的软件程序通过此外接端口下载到SoC上。
目前已公开的OCD的现有技术都是通过边界扫描测试标准组织(JTAG:Joint Test Action Group)串行口(serial port)、个人计算机的并行口(parallel port)和以太网(Ethernet)接口这样的外接端口与调试主机相连的。图1显示了根据目前已有技术构成的这样一种片上调试系统。其中调试主机106包括有调试软件107和并行口108。而待调试的SoC单芯片101包括嵌入式CPU、片上调试器(OCD)103以及JTAG端口104。调试主机106和SoC单芯片101通过JTAG-并行口转换装置105相互连接。
图2所示的片上调试系统与图1的技术方案相类似。不同点在于图1中调试主机106中的并行口108用以太网口208替代,而JTAG-并行口转换装置105相应地替换成JTAG-以太网口转换装置205。
与这些现有技术的相关专利和产品包括:
1)美国Advanced Micro Devices,Inc.公司的Parallel and serial debug port on aprocessor(美国专利第6,041,406号)。
2)美国Advanced Micro Devices,Inc.公司的Debug interface including operatingsystem access of a serial/parallel debug port(美国专利第5,978,902号)。
3)美国Macraigor公司的产品Wiggler、Raven、mpDemon。
在采用并行口接口的现有OCD技术中,由于受到并行口的速度限制,使得SoC芯片与调试主机之间的数据传输最高只能达到每秒几兆比特的程度,远远不能适应视频图象处理用SoC芯片的要求(每秒几百兆比特)。采用以太网接口的现有OCD技术其数据传输速度虽然比并行口的速度高一些,但也只能达到每秒几十兆比特的程度,依然不能适应视频图象处理用SoC芯片的要求,而且以太网接口,特别是高速以太网接口的价格很高。
发明内容
针对以上问题,本发明提出了一种用于对片上系统芯片进行调试的片上调试器,包括:片上调试器核,当所述芯片的CPU工作在调试模式下时,所述片上调试器核逐条指令地控制所述CPU的运行,并发送所述CPU以及所述芯片内其他模块的运行状态数据;其中,所述片上调试器还包括:USB核,所述USB核接收所述片上调试器核所发送的所述运行状态数据,并以USB数据形式发送所述运行状态数据;双向fifo(first-in-first-out)缓冲器,所述fifo用来同步所述USB核与所述片上调试器核之间的数据传输;USB物理收发器,所述物理收发器完成从USB外部模拟信号到USB内部数字信号的转换、从USB内部数字信号到USB外部模拟信号的转换,以及USB时钟信号的复原;USB连线,所述USB物理收发器的输入和输出USB模拟信号经由所述USB连线与外部调试主机的USB接口进行连接。
本发明还提出了一种用于含嵌入式CPU和其他电路的芯片设计和调试的调试系统,包括:安装有调试软件和连接端口的调试主机;通过连线与所述调试主机相连接的待调试芯片,其中,所述芯片包括如上所述的片上调试器。
由于采用了数据传输速率更高且低成本的USB端口进行数据传输,因此可以满足视频图象处理用SoC芯片对高速率数据传输的需要,且可以降低调试系统的成本。
附图说明
通过以下结合附图所进行的详细描述,本领域普通技术人员将会更加清楚本发明的特征、目的和优点。其中,所附示图包括:
图1是现有技术中SoC片上调试系统的一种技术方案的示意图;
图2是现有技术中SoC片上调试系统的另一种技术方案的示意图;
图3是根据本发明的SoC片上调试系统的一种技术方案的示意图;
图4显示了根据本发明第一实施例的应用于图3所示片上调试系统的SoC片上调试器;
图5显示了根据本发明第二实施例的应用于图3所示片上调试系统的SoC片上调试器;
图6显示了根据本发明的第三实施例应用于图3所示片上调试系统的SoC片上调试器;
具体实施方式
图3显示了根据本发明构成的片上调试系统的一个实施例。除了用USB主机(USB host)308代替了图1中的并行口108和图2中的以太网口208、用USB核304代替了图1和图2中的JTAG模块之外,其他与图1和图2的技术方案相类似。
整个SoC的片上调试器由5个部分组成:
1.OCD核103;
2.双向fifo(first-in-first-out)缓冲器302
3.USB核304;
4.USB物理收发器303;
5.USB 连线305。
根据SoC的实际需要,USB核可以放在SoC内部,也可以放在SoC外部,USB物理收发器可以放在SoC内部,也可以放在SoC外部,USB核,USB物理收发器与USB连线可以是片上调试器专用的,也可以除了用于片上调试器外,亦有其他用途,如把SoC与其他外围设备连接起来。
实施例1
图4进一步显示了图3中片上调试器的第一实施例构成方块图。
其中,当CPU工作在调试模式下时,OCD核103逐条指令地控制CPU的的运行,并把CPU及SoC内其他模块的运行状态(如寄存器和存储器的内容)传递给USB端点(endpoints)。虽然图中仅显示了两个USB端点402、403,但如同本领域普通技术人员所能够理解的,也可以设置多于两个USB端点,其中至少一个USB端点是输入(IN)端点,至少一个USB端点是输出(OUT)端点。这些USB端点402、USB端点403分别直接与一个单向fifo缓冲器406、407相连,这些缓冲器用于把数据传输于OCD核103与USB部件控制器404(USB devicecontroller)之间并对数据进行缓冲。
USB部件控制器(USB device controller)404按照USB协议的Bulk或Isochronous模式,控制数据的传输。USB部件控制器需严格按照USB规范工作,是一个标准的模块。
USB信息ROM408(Read-Only-Memory即只读存储器)用于存储此USB设备的描述符。设备的描述符记录了USB设备的一些通用信息和端点的配置信息,供USB部件控制器响应主机来的设备请求时提取,然后送给主机,以保证主机能识别此USB设备。设备的描述符包括配置描述符、接口描述符、端点描述符。端点描述符描述的端点配置如下:
  端点号   传输方式   数据包尺寸(Byte)   用途
  1   BULK IN   4   片上调试器向调试主机送数据
  2   ISO  OUT   512   调试主机向片上调试器送数据
                               表1
USB收发器405(USB transceiver)具有接收和发送两个功能:
1)接收来自外部的USB串行数据信号,对串行信号进行NRZI反编码,然后进行串并转换后,变为8bit的并行信号,送到USB部件控制器404。
2)把从USB部件控制器404来的8bit的并行信号转换成串行信号,再进行NRZI编码后,发送到外部。
它具有一定的驱动能力,能够在USB工作频率下,完成USB数据的接收和发送。片上调试器与调试主机106通过USB连线305被连接起来。所述USB连线305较佳长度为1-3米。当然根据实际应用,也可以采用更长或更短的USB连线305。
在一种实施方式中,以上部件都被集成到SoC内部。
实施例2
图5进一步显示了图3中片上调试器的第二实施例构成方块图。
为简明起见,以下将省略图5中与图4相同部件的描述。与图4所示的第一实施例所不同的是,在OCD核103与USB端点402、403之间,增加了JTAG电路502和JTAG-USB信号形式转换电路503。这里的OCD核103具有与第一实施例相同的功能,但它能够与传统的JTAG接口相连。而JTAG电路502能够按照JTAG协议控制数据的传输。JTAG-USB信号形式转换电路503则能够把JTAG数据形式转换成USB数据形式,或者把USB数据形式转换成JTAG数据形式。
在一种实施方式中,以上的OCD核103与JTAG电路502部分被集成到SoC内部,而其他部分则组成一个独立的单元。
实施例3
图6进一步显示了图3中片上调试器的第三实施例构成方块图。
为简明起见,以下将省略图6中与图4相同部件的描述。与图4所示的第一实施例所不同的是,除了具有与第一实施例相同的功能之外,这里的USB部件控制器404还负责对片上调试器之外的USB端点,如USB端点607,进行控制。而这样的USB端点607通过SoC内部总线610与待调试芯片101中的其他处理部件进行连接,如视频处理器609和音频处理器608。本实施例中,端点描述符描述的端点配置如下:
  端点号   传输方式   数据包尺寸(Byte)   用途
  1   BULK IN   4   片上调试器向调试主机送数据
  2   ISO OUT   512   调试主机向片上调试器送数据
  3   ISO IN   512   音频处理器向调试主机送数据
  4   ISO OUT   512   调试主机向音频处理器送数据
  5   ISO IN   512   视频处理器向调试主机送数据
  6   ISO OUT   512   调试主机向视频处理器送数据
                                 表2
在一种实施方式中,以上部件都集成到SoC内部。在此实施方式中的USB端点不但在片上调试器中起到高速数据通道的作用,而且在此SoC中发挥非调试用高速输入输出的作用,例如把SoC中的所有其他部分(如视频处理器、音频处理器)与SoC外部的各种装置和芯片连接起来。

Claims (8)

1.一种用于对片上系统芯片进行调试的片上调试器,包括:
片上调试器核,当所述芯片的CPU工作在调试模式下时,所述片上调试器核逐条指令地控制所述CPU的运行,并发送所述CPU的运行状态数据;
其特征在于,所述片上调试器还包括:
USB核,所述USB核接收所述片上调试器核所发送的所述运行状态数据,并以USB数据形式发送所述运行状态数据;
双向FIFO缓冲器,所述FIFO缓冲器用来同步所述USB核与所述片上调试器核之间的数据传输;
连接到所述USB核的USB物理收发器,所述USB物理收发器完成从USB外部模拟信号到USB内部数字信号的转换、从USB内部数字信号到USB外部模拟信号的转换,以及USB时钟信号的复原;
USB连线,所述USB物理收发器的输入和输出USB模拟信号经由所述USB连线与外部调试主机的USB接口进行连接。
2.如权利要求1所述的片上调试器,其特征在于,所述USB核进一步包括:
与所述片上调试器核相连的至少两个USB端点,
分别与所述至少两个USB端点连接的至少两个单向fifo缓冲器,所述单向fifo缓冲器用于把数据传输于所述OCD核与所述USB端点之间并对数据进行缓冲;
连接到所有所述USB端点的USB部件控制器,用于按照USB协议的数据传输形式对数据传输进行控制;
连接到所述USB部件控制器的USB收发器,用于在USB工作频率下,完成USB数据的接收和发送;
连接到所述USB部件控制器的USB信息ROM,用于存储USB设备的描述符。
3.如权利要求1所述的片上调试器,其特征在于,所述USB核进一步包括:
与所述片上调试器核相连的JTAG电路,用于按照JTAG协议控制数据的传输;
与所述JTAG电路相连的JTAG-USB信号形式转换电路,用于把JTAG数据形式转换成USB数据形式或者把USB数据形式转换成JTAG数据形式;
与所述JTAG-USB信号形式转换电路相连的至少两个USB端点;
分别与所述至少两个USB端点连接的至少两个单向fifo缓冲器,所述单向fifo缓冲器用于把数据传输于所述OCD核与所述USB端点之间并对数据进行缓冲;
连接到所有所述USB端点的USB部件控制器,用于按照USB协议的数据传输形式对数据传输进行控制;
连接到所述USB部件控制器的USB收发器,用于在USB工作频率下,完成USB数据的接收和发送,
连接到所述USB部件控制器的USB信息ROM,用于存储USB设备的描述符。
4.如权利要求2所述的片上调试器,其特征在于,所述USB部件控制器还对所述USB核外的USB端点进行控制。
5.如权利要求2或3所述的片上调试器,其特征在于,所述USB信息ROM用于存储包括配置描述符、接口描述符、端点描述符在内的USB设备的描述符。
6.如权利要求2-4中任一项所述的片上调试器,其特征在于,所述USB部件控制器按照USB协议的Bulk模式对数据传输进行控制。
7.如权利要求2-4中任一项所述的片上调试器,其特征在于,所述USB部件控制器按照USB协议的Isochronous模式对数据传输进行控制。
8.一种用于含嵌入式CPU和其他电路的芯片设计和调试的调试系统,包括:
安装有调试软件和连接端口的调试主机;
通过连线与所述调试主机相连接的待调试芯片,
其特征在于,所述芯片包括如权利要求1-4中任一项所述的片上调试器。
CNB2004100845983A 2004-11-26 2004-11-26 片上系统的片上调试器 Expired - Fee Related CN100435110C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100845983A CN100435110C (zh) 2004-11-26 2004-11-26 片上系统的片上调试器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100845983A CN100435110C (zh) 2004-11-26 2004-11-26 片上系统的片上调试器

Publications (2)

Publication Number Publication Date
CN1779653A true CN1779653A (zh) 2006-05-31
CN100435110C CN100435110C (zh) 2008-11-19

Family

ID=36769989

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100845983A Expired - Fee Related CN100435110C (zh) 2004-11-26 2004-11-26 片上系统的片上调试器

Country Status (1)

Country Link
CN (1) CN100435110C (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236067A (zh) * 2010-04-22 2011-11-09 上海华虹集成电路有限责任公司 实现芯片功能故障快速调试定位的方法及其调试电路
CN102411535A (zh) * 2011-08-02 2012-04-11 上海交通大学 导航SoC芯片仿真、验证和调试平台
CN103226506A (zh) * 2013-04-28 2013-07-31 杭州士兰微电子股份有限公司 内嵌于芯片的usb转jtag调试装置及其调试方法
CN105550118A (zh) * 2016-01-27 2016-05-04 珠海格力电器股份有限公司 调试系统和调试方法
CN107077409A (zh) * 2014-10-30 2017-08-18 高通股份有限公司 用于在电子系统中进行多接口调试的嵌入式通用串行总线(usb)调试块(eud)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0025594D0 (en) * 2000-10-18 2000-12-06 Sgs Thomson Microelectronics On-chip emulator communication
CN1234085C (zh) * 2003-10-17 2005-12-28 清华大学 基于通用串行总线的多参数数据获取系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236067A (zh) * 2010-04-22 2011-11-09 上海华虹集成电路有限责任公司 实现芯片功能故障快速调试定位的方法及其调试电路
CN102236067B (zh) * 2010-04-22 2015-07-01 上海华虹集成电路有限责任公司 实现芯片功能故障快速调试定位的方法及其调试电路
CN102411535A (zh) * 2011-08-02 2012-04-11 上海交通大学 导航SoC芯片仿真、验证和调试平台
CN102411535B (zh) * 2011-08-02 2014-04-16 上海交通大学 导航SoC芯片仿真、验证和调试平台
CN103226506A (zh) * 2013-04-28 2013-07-31 杭州士兰微电子股份有限公司 内嵌于芯片的usb转jtag调试装置及其调试方法
CN107077409A (zh) * 2014-10-30 2017-08-18 高通股份有限公司 用于在电子系统中进行多接口调试的嵌入式通用串行总线(usb)调试块(eud)
CN105550118A (zh) * 2016-01-27 2016-05-04 珠海格力电器股份有限公司 调试系统和调试方法
CN105550118B (zh) * 2016-01-27 2018-01-30 珠海格力电器股份有限公司 调试系统和调试方法

Also Published As

Publication number Publication date
CN100435110C (zh) 2008-11-19

Similar Documents

Publication Publication Date Title
CN103885919A (zh) 一种多dsp和fpga并行处理系统及实现方法
CN107911391A (zh) 一种基于fpga的axi协议与spi协议转换的方法
CN104915303B (zh) 基于PXIe总线的高速数字I/O系统
DE112012004451T5 (de) Mehrfachprotokoll-Serdes-PHY-Vorrichting
CN114168520A (zh) 光纤通信总线装置、设备和系统
CN113849436A (zh) 一种兼容多种串行协议的can数据转换芯片和方法
CN1779653A (zh) 片上系统的片上调试器
US20100228901A1 (en) Input output control apparatus with a plurality of ports and single protocol processing circuit
CN111770342B (zh) 一种视频无级缩放方法
CN101329702A (zh) 一种满足SystemC语法的多核处理器的先进先出队列单元组
CN100343778C (zh) 数据传送方法和数据传送桥接器
WO2008133940A2 (en) Serialization of data in multi-chip bus implementation
US10949588B1 (en) High speed, low hardware footprint waveform
CN1707403A (zh) 输入输出接口控制器
US11811897B2 (en) Method for data processing of frame receiving of an interconnection protocol and storage device
CN110287141A (zh) 一种基于多种接口的fpga重构方法和系统
Szecówka et al. USB receiver/transmitter for FPGA implementation
CN100462952C (zh) 接口可配置的通用串行总线控制器
CN1794243A (zh) 一种数据缓存单元及其实现方法
CN1420415A (zh) Pci-片上总线连接器
CN101075221A (zh) 管理分离总线上总线代理之间的数据流的方法和系统
Toledo et al. A plug and play approach to data acquisition
KR100642158B1 (ko) 슬레이브 그룹 인터페이스 장치와, 슬레이브 그룹 인터페이스 장치를 통해 버스와 주변 장치를 인터페이스하는 방법 및 시스템
KR100591243B1 (ko) 온-칩 직렬 주변장치 버스 시스템 및 그 운용방법
CN1841270A (zh) 一种用于智能卡仿真调试系统的接口

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081119

Termination date: 20131126