WO2010012172A1 - 一种数据处理方法、控制器及系统 - Google Patents

一种数据处理方法、控制器及系统 Download PDF

Info

Publication number
WO2010012172A1
WO2010012172A1 PCT/CN2009/071868 CN2009071868W WO2010012172A1 WO 2010012172 A1 WO2010012172 A1 WO 2010012172A1 CN 2009071868 W CN2009071868 W CN 2009071868W WO 2010012172 A1 WO2010012172 A1 WO 2010012172A1
Authority
WO
WIPO (PCT)
Prior art keywords
jtag
data
processor
processing
controller
Prior art date
Application number
PCT/CN2009/071868
Other languages
English (en)
French (fr)
Inventor
吴兴刚
王记锋
方庆银
霍红伟
谭亚中
黄欣
张成景
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2010012172A1 publication Critical patent/WO2010012172A1/zh

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318555Control logic

Definitions

  • the present invention relates to electronic device communication technologies, and in particular, to a data processing method, controller and system. Background technique
  • JTAG Joint Test Action Group
  • JTAG technology has been widely used in product testing, product maintenance and upgrade, fault location, etc., making JTAG technology widely used.
  • JTAG technology itself is based on a serial interface, so processing efficiency is a key indicator of the technology.
  • existing dedicated JTAG processing devices or other processing devices have no advantage in terms of processing performance or application promotion cost.
  • the existing technical solution implemented by a dedicated JTAG processing device is mainly implemented by using a dedicated chip + a central processing unit (CPU).
  • the dedicated chip provides the corresponding interface, and realizes the sending and receiving of the JTAG data under the control of the service CPU.
  • the service CPU is responsible for computing and processing the JTAG data transmitted through the dedicated chip, and delivering the processed JTAG data to the dedicated chip; Implement JTAG data stream parallel and serial conversion, and control the test reset input (Test Reset, TRST), Test Mode Select (TMS), Test Data Input (TDI), and test data output in the JTAG interface. (Test Data Output, TDO), test clock (TCK) data collection hair.
  • the operation mode of the dedicated chip processing JTAG data is as follows:
  • the service CPU completes the operation of the JTAG data to be sent, writes the JTAG data such as TMS and TDI to the address corresponding to the dedicated chip, and the dedicated chip starts transmitting and receiving the TDO.
  • the service CPU waits for the dedicated chip processing at this time until the dedicated chip processing is completed.
  • the service CPU retrieves the received data, it calculates the data to be sent next time, and writes the completed data to the corresponding address of the dedicated chip to start the next JTAG operation. Cycle through the operations until the operation is complete.
  • the inventor has found that during the entire operation, as shown in FIG. 1, the service CPU processing (such as CPU data transmission and reception) and JTAG data stream transmission and reception are serially alternated, after the CPU sends the JTAG data.
  • the data transceiver operation of the dedicated chip and the external JTAG interface must be completed before the next CPU operation can be performed. As a result, the data transmission and reception of the dedicated chip is discontinuous, and the JTAG processing efficiency is low.
  • the technical problem to be solved by the present invention is to provide a data processing method, controller and system with high JTAG processing efficiency.
  • an embodiment of the present invention provides a processing system, where the processing system includes a processor processor and an interrupt controller, and the processing system further includes a JTAG load controller; wherein, the JTAG load controller is used by Performing transmission and reception of the JTAG data, and transmitting an interrupt request to the interrupt controller to complete continuous processing of the JTAG data transceiving according to the sending and receiving conditions of the JTAG data; the interrupt controller is configured to: Responding to an interrupt request from the JTAG load controller, and transmitting the interrupt request to the processor; the processor, configured to process an interrupt request sent by the interrupt controller, and in the JTAG load control The JTAG data processing is performed when the JTAG data is transmitted and received.
  • an embodiment of the present invention provides a JTAG load controller, the controller is connected to a terminal controller, and the controller includes: a processing control unit, configured to be used according to the processor The control information controls continuous processing of JTAG data transceiving when the processor performs JTAG data processing; the data storage unit is configured to store corresponding JTAG data under the control of the processing control unit; and the status monitoring unit is configured to monitor the Determining, by the data storage unit, the processing status of the JTAG data, and reporting or masking the relevant processing status to the interrupt controller according to the configuration; the timing control interface, configured to implement the JTAG data and the external serial data stored by the data storage unit Interaction.
  • a processing control unit configured to be used according to the processor The control information controls continuous processing of JTAG data transceiving when the processor performs JTAG data processing
  • the data storage unit is configured to store corresponding JTAG data under the control of the processing control unit
  • the status monitoring unit is configured to monitor the Determining, by the data storage unit, the
  • an embodiment of the present invention further provides a data processing method of a processing system, where the processing system includes a processor and a JTAG load controller, the method includes: the processor is in the JTAG load controller Performing JTAG data processing when performing JTAG data transceiving; storing the JTAG data that has been processed by the processor to the idle when the processor detects that there is free storage space in the JTAG load controller The storage space is stored, otherwise the processor continues to process the JTAG data.
  • an embodiment of the present invention further provides a data processing method of a processing system, where the processing system includes a processor and a JTAG load controller, and the method includes: the JTAG load controller according to the processor Controlling continuous transmission and reception of JTAG data; while the JTAG load controller performs JTAG data transmission, when the JTAG load controller has free storage space, obtaining and storing from the processor, the processor has been processed JTAG data.
  • the processor when the processor performs JTAG data transmission and reception in the JTAG load controller, the JTAG data processing is performed, and the processor speed is faster than the data transmission and reception speed of the JTAG load controller, thereby ensuring The continuity of data transmission and reception by the JTAG load controller improves the efficiency of JTAG processing.
  • FIG. 1 is a diagram showing the relationship between the existing CPU processing and the JTAG data stream timing
  • FIG. 2 is a schematic diagram of a composition of a processing system in an embodiment of the present invention.
  • FIG. 3 is a timing diagram of relationship between MCU processing and JTAG data flow in the embodiment of the present invention
  • FIG. 4 is a schematic diagram of a composition of the JLC embodiment of FIG. 2;
  • FIG. 5 is a schematic diagram of a composition of an embodiment of a register module in the data storage unit of FIG. 4.
  • FIG. 5a is a schematic diagram of a specific embodiment of the processing control unit of FIG. 2.
  • FIG. 6 is a data storage unit of FIG.
  • FIG. 6a is a schematic diagram of another embodiment of the processing control unit in FIG. 2;
  • FIG. 6 is a JTAG external interface TDI, TMS in the TMS automatic transmission mode in the embodiment of the present invention;
  • FIG. 8 is another schematic diagram of an embodiment of a cache module in a data storage unit according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a composition of a cache module and a processing control unit in an embodiment of the present invention
  • FIG. 9 is another schematic diagram of a processing system in an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of an application scenario of a processing system in an embodiment of the present invention.
  • FIG. 11 is a schematic flowchart of a data processing method of a processing system in an embodiment of the present invention
  • FIG. 12 is a schematic flowchart of interrupt processing performed in a data processing method of a processing system in an example of the present invention
  • FIG. 13 is a schematic flow chart showing the operation of the MCU and JLC in the processing system in the embodiment of the present invention. detailed description
  • the processing system provided in the embodiment of the present invention includes a processor 1, an interrupt controller 2, and a JLC 3.
  • the processing system described in the embodiment of the present invention may be integrated in the same chip, such as integrated into a System on Chip (SOC), or the processor and the interrupt processor are integrated on the same chip, and the JLC uses another A chip implementation.
  • SOC System on Chip
  • the processor and the interrupt processor are integrated on the same chip, and the JLC uses another A chip implementation.
  • the processor 1 is configured to control the interrupt controller 2 and the JLC3, and synchronously perform JTAG data processing when the JLC3 performs data transmission and reception.
  • the processor 1 can be a Micro Controller United (MCU).
  • the interrupt controller 2 is configured to respond to an interrupt request from the JLC3, and send the interrupt request to the processor 1 for processing.
  • the JLC3 is configured to implement transmission and reception of JTAG data according to control of the processor 1, send an interrupt request to the interrupt controller 2 according to the sending and receiving conditions of the JTAG data, and implement JTAG data transmission and reception. Continuous processing, reaching TCK without waiting for processing. Since the processing speed of the processor 1 is higher than the data transmission and reception speed of the JLC3, when the JLC3 completes the previous data transmission and reception, the next data processed by the processor 1 is ready to be sent and received by the JLC3, and therefore, for the JLC3 , its data transmission and reception can be carried out continuously. That is, the way of parallel processing similar to that of FIG.
  • the data address bus between the JLC1 and the processor 1 is the bus inside the chip, and the bus efficiency is also high relative to the bus between the chips.
  • JLC3 includes: a status monitoring unit 30, a processor interface 32, a processing control unit 34, a data storage unit 36, and a serial timing control interface (Serial Timing Control) 38.
  • the status monitoring unit 30 is connected to the data storage unit 36 for monitoring internal JTAG data. The status is processed, and the relevant processing status is reported or blocked to the interrupt controller according to the configuration, so that the processor can perform the next processing in time.
  • a processor interface 32 coupled to the processor, is configured to provide an information interaction interface for the processor. That is, the processor provides an information interaction interface with other related modules in the JLC, and realizes the interaction between the processor and the JLC data stream of the JLC. This unit is optional.
  • Processing control unit 34 coupled to the processor interface 32, for receiving control information from the processor through the processor interface 32, and controlling JTAG data when the processor performs JTAG data processing according to the control information Continuous processing of sending and receiving.
  • the control information may include: an unlock enable of the processing control unit 34 by the processor, a TCK frequency, an arbitrary interconnection of an external chain, a sending mode, a status reporting manner, and related configuration information.
  • a data storage unit 36 is coupled to the processor interface 32 and the processing control unit 34 for storing corresponding JTAG data signals under the control of the processing control unit 34.
  • the JTAG data can be stored and transmitted in the form of a JTAG data link.
  • a timing control interface 38 is coupled to the data storage unit 36 for effecting interaction of parallel JTAG data stored by the data storage unit 36 with external serial data.
  • the implementation of data interaction may include implementing serial-to-parallel conversion, converting TMS, TCK. TDI, TDO, and TRST data into an interface signal conforming to the IEEE Std 1149.1 standard, and storing the data received in the TDO in a corresponding TDI position.
  • the data storage unit 36 includes two modes when performing data storage: a register mode and a cache mode.
  • the data storage unit 36 includes a register module 360 for storing the corresponding JTAG data under the control of the processing control unit 34 through the register mode.
  • the register module 360 may specifically include: a TMS register 3600 for storing TMS data sent by the processor interface 32; and a test data register 3602 for storing input and output test data. (ie TDI, TDO); TCK register 3604, The information for storing the test clock signal, such as the number of NOP TCKs; the register module may further include: a reset register 3606 for storing the TRST signal.
  • the length of the transmission data in the test data register 3602 can be flexibly configured.
  • the value of TRST in the reset register 3606 directly reflects the level signal of the external interface TRST.
  • the value in TCK register 3604 is the number of NOP TCKs that need to be sent. When the NOP TCK is transmitted, the status of the associated signal interface of the other registers remains unchanged.
  • the processing control unit 34 includes: a register mode control module 340, configured to control the JTAG data of the processor 1 to be directly written into the corresponding register, and written After the end, the transmission of the corresponding data is enabled, or the JTAG data received by the control timing control interface 38 is stored in the corresponding register.
  • a register mode control module 340 configured to control the JTAG data of the processor 1 to be directly written into the corresponding register, and written After the end, the transmission of the corresponding data is enabled, or the JTAG data received by the control timing control interface 38 is stored in the corresponding register.
  • the TMS and TDI signals stored in the register can be sent independently. When any one of them is sent, the other states remain unchanged.
  • a dedicated TMS and TDI register set is provided to ensure that the last TDI bit and the first bit of the tail TMS are sent together by one TCK.
  • the register module 360 further includes a special register set 3608 for storing data when the TMS and the TDI are co-transmitted.
  • the processing control unit 34 further includes a co-location processing module 342 for using TMS on the data link. When the TDI cooperates with the transmission, the last bit of the TDI and the first bit of the TMS are transmitted in the same test clock using the data stored by the special register set 3608.
  • Mode 1 is mainly applied to the case where the JTAG operation is frequently changed, the processor participates in high degree of cooperation, and the JTAG data length is short. Due to the use of register storage related data, the operation is more flexible in this mode, and can be adapted to complex processing. .
  • the data storage unit 36 includes a cache module 362 for storing the corresponding JTAG data under the control of the processing control unit 34 through the cache mode.
  • the cache module may further include a chain header sub-module 3620 for storing a chain header TMS of the JTAG scan chain, and a chain tail sub-module 3622 for storing a chain tail TMS of the JTAG scan chain; Two cache sub-modules 3624 for storing the sent by the processor 1 TDI, or stores the TDO received through the timing control interface 38.
  • the cache mode can be further divided into a TMS automatic transmission mode and a TMS manual transmission mode according to the configuration of the JTAG scan chain header TMS and the chain tail TMS:
  • the processor In the TMS automatic transmission mode, after the processor first configures the TMS_H (chain head TMS) and the TMS_L (chain end TMS) stored in the chain header sub-module 3620 and the chain tail sub-module 3622, the processor only needs to store the corresponding corresponding to the buffer sub-module.
  • the TDI value can be used.
  • the processor only needs to change the TDI value in the cache at a time, thereby reducing the processor operation.
  • Figure 7 is a timing diagram of the JTAG external interface TDI, TMS, and TCK in a buffer submodule in the TMS automatic transmission mode.
  • the TDI stored in the cache submodule starts to be sent.
  • the chain tail TMS is co-located with the last bit TDI, that is, simultaneously transmitted under a TCK, as shown in the common picture. In other locations, the TMS and TDI are sent separately, and at the time of non-transmission, the state is maintained.
  • the cache submodule is still sent in the TMS automatic mode.
  • the application scenario of this mode is mainly when the JTAG chain is too long, and the length of a single JTAG is greater than the length of a single cache, and the TMS cannot be automatically matched. In this way, the continuity of single-chain operation is ensured, and the processing efficiency is improved.
  • the processing control unit 34 includes: a cache mode control module 344, configured to control the TDI of the processor 1 to be written into a corresponding cache sub-module, and After the writing ends, the sending of the data is enabled. After the data link in the buffer sub-module is sent, the next data chain stored in the non-empty buffer sub-module is enabled, and the timing control can be controlled. The TDO received by interface 38 is stored in an idle buffer sub-module.
  • the processing control unit 34 may include both the cache mode control module 344 and the register mode control module 340 and the co-location processing module 342.
  • Boundary represents the buffer submodule.
  • the processor can process the associated received TDO data and prepare for transmission of the next frame of TDI data, thereby causing the processor processing to be performed in parallel with the JTAG data transmission.
  • the TDO data received during the sending process will be stored in the Boundary sent by the corresponding location.
  • the TDI data will retain the value after the last operation, so the processor only needs to change the corresponding modified position, and does not need to change one by one.
  • the address is filled in, which reduces the data movement between the processor and the JLC, and improves the interaction efficiency.
  • the Flash write signal is directly passed to the processor.
  • the processor reduces the number of JTAG data links that need to be sent according to the processing situation and control, thereby improving the upgrade efficiency.
  • This 10 is usually called DirectWe (DW). Since the operation is interspersed at the end of the JTAG chain, when the independent 10 control, the CPU needs to wait for the chain to be completed and process the DW, which will inevitably affect the operational continuity between the two JTAG data links.
  • DW DirectWe
  • a cache module 362 including a DW module is provided.
  • the DW module 3628 is configured to store a DW attribute, and the DW attribute is a configuration attribute of the corresponding JTAG data link. In manual mode, the DW is controlled by processor processing.
  • an embodiment of the present invention also provides a process control unit including a ring control module 346.
  • the DW control module 346 is configured to send a corresponding pulse synchronously with the next data link according to the DW attribute after the JTAG data link in the cache is sent.
  • DW is a configuration attribute of the JTAG data link.
  • the DW attribute is configured, when the JTAG data link in the cache module is sent, the DW will automatically follow the DW.
  • Configure the level to send the corresponding pulse pulse width configurable, and send it synchronously with the next chain, without the need of processor participation, thus achieving more JTAG operation The complete continuity of the chain.
  • the interrupt controller may be a vector interrupt controller (VIC); the processor interface may be a processor peripheral bus interface (Peripheral Bus Interface).
  • the register module includes: a mode selection register (abbreviated as TMS in the figure), an input/output register (referred to as TDI_TDO in the figure), a clock register (referred to as TCK in the figure), and a reset register (referred to as TRST in the figure).
  • the cache module includes: a chain header sub-module and a chain tail sub-module (shown as TMS_H and TMS_T in the figure), n cache sub-modules (Boundary 0, ..., Boundary n in the figure) and a DW module (in the figure) Referred to as DW).
  • the timing control interface of the figure also indicates the data type of input and output, where n* is represented as n groups of JTAG interfaces, and each group includes TRST, TMS, TDI, TCK, TDO.
  • FIG. 10 it is an application scenario of the SOC in the embodiment of the present invention.
  • the processing system of the embodiment of the present invention is implemented by using the SOC.
  • the FE is a network port, and the remote/near-end network management is implemented.
  • the BSC is a Boundary Scan Cell.
  • the MPU is the main control service CPU, which realizes JTAG operation data storage, transmission and maintenance.
  • the serial bus implements the SOC to communicate with the master.
  • the BSC is the boundary scanning unit, and the Board is a different service board.
  • the SOC is responsible for completing the JTAG processing operation and returning the operation result.
  • the JTAG data files of the board are upgraded and loaded, and the JTAG data files are downloaded to the storage medium of the main control board through the remote background network management system or the local maintenance terminal.
  • the main control board is used. Issue the relevant command to the internal SOC of the board that needs to be processed (that is, Board 0, ..., Board n in the figure), trigger the SOC to start related operation processing, and the SOC will complete the data during the operation and The operation result is returned to the main control, and the main control is reported to the network management.
  • the SOC is the center of JTAG data processing operations, and no master control is required.
  • the master is only responsible for data transmission and collects processing results.
  • the JTAG operation processing center is moved down to each node, which is a distributed operation, and supports multiple nodes to perform JTAG processing operations at the same time, thereby improving the efficiency of simultaneous operation of multiple boards.
  • the JLC is included in the processing system, and the processing of the JLC and the processor is performed, so that when the processing system processes the JTAG data, the continuous processing of the JLC test clock can be realized, and the TCK has no waiting. Transceiver, improve the efficiency of JTAG data processing.
  • a data processing method is further provided in the embodiment of the present invention, where the method includes:
  • the processor controls the JLC, so that the JLC can perform continuous processing of the JTAG data, and the TCK has no waiting for transmission and reception.
  • the JTAG data is stored and transmitted in the form of a data link.
  • the processor performs synchronous JTAG data processing when the JLC performs data transmission and reception.
  • the processor detects that there is free storage space in the JLC, the processor processes the completed JTAG data storage. The storage is stored in the free storage space, otherwise the processor continues to process the JTAG data.
  • the 1101 and the 1102 may be executed sequentially or in synchronization, and the step 1101 may be specifically:
  • the processor configures the JLC.
  • the configuration may be that the processor configures the chain header TMS and the chain tail TMS and other related control information for the JLC, so that after the configuration is completed, the JLC can complete the interaction with the external JTAG interface without the processor participating. Data is sent and received.
  • the JLC After the JLC completes the current data link transmission and reception, if the JLC has other data links to be sent and received, the JLC continues to send and receive corresponding data according to the configuration.
  • the data processing method in the embodiment of the present invention further includes a process of processing an interrupt:
  • the JLC generates an interrupt request after completing the current data link transmission and reception.
  • the processor will respond according to the reported interrupt request.
  • the processed JTAG data is sent to the JLC.
  • step B the processor continues to process the JTAG data, including: the processor obtains the TDI received from the outside in the JLC, and processes the TDI.
  • an internal processor (such as an MCU) of a processing system is matched with a JLC. Schematic diagram of the operation process.
  • the processing system internal JTAG operation process has three parts: interrupt processing, MCU processing, and JLC processing.
  • the interrupt processing realizes communication between the JLC and the MCU, and reports the JLC operation status to the MCU in time.
  • the MCU is responsible for computing the JTAG operation data, and configuring the JLC module to deliver and receive data from the JLC.
  • the JLC is responsible for transmitting and receiving JTAG data in a continuous serial and bidirectional conversion.
  • the MCU needs to configure the JLC first, and enable the JLC to perform JTAG data transmission and reception;
  • the MCU After the JLC configuration is completed, the MCU sends a transmission and reception control command to the JLC to control the JLC to start the JTAG data transmission and reception, and the JLC performs data transmission and reception according to the corresponding process: 1302.1, checking whether the buffer has data to be sent and received, 1302.2, if any
  • the JTAG data input/output is performed through the timing control interface, 1302.3, and the transmission completion signal is generated after the JLC completes the data transmission through the timing control interface. It should be noted that when the timing control interface performs transmission and reception, data transmission and reception are performed synchronously. For details, refer to the related standards of JTAG.
  • the MCU After the MCU sends and receives the JLC transceiver control command, the MCU continues to process the JTAG data according to the interrupt:
  • the interrupt processor generates and sends an interrupt to the MCU according to the transceiver completion signal sent by the JLC, and releases the flag;
  • the MCU fills in the data that has been processed into the JLC cache according to the foregoing flag.
  • the MCU determines whether the JLC cache is idle.
  • the MCU continues to perform data processing, and waits for a next interrupt request after the processing is completed;
  • the MCU fills the data into the free buffer, and continues to perform other data processing or interrupt processing after the MCU data is filled.
  • the process of obtaining the TDO data to be processed from the JLC is not shown in the flow. It can be understood that the process is performed before the TDO data is processed in the MCU.
  • the MCU when the JLC performs data transmission and reception, the MCU can simultaneously obtain the JTAG data to be processed received by the JLC from the outside, and process the JTAG data to implement continuous processing of the JLC. TCK has no waiting for transmission and reception, which improves the efficiency of JTAG data processing.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, ie may be located One place, or it can be distributed to multiple network elements. Some or all of the modules may be selected according to actual needs to achieve the objectives of the embodiment. Those of ordinary skill in the art can understand and implement without undue creative work.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

一种数据处理方法、 控制器及系统 本申请要求于 2008 年 7 月 31 日提交中国专利局、 申请号为 200810029897.5、 发明名称为"一种数据处理方法、 控制器及系统 "的中国专利 申请的优先权, 其全部内容通过引用结合在本申请中。
技术领域
本发明涉及电子器件通讯技术, 尤其涉及一种数据处理方法、 控制器及 系统。 背景技术
最早提出联合测试行动组 (Joint Test Action Group, JTAG )技术, 主要 是为了解决高复杂、 高集成度芯片以及印刷电路板 ( Printed Circuit Board, PCB ) 的测试问题。
随着 JTAG技术的发展, JTAG技术在产品测试、 产品维护升级、 故障定 位等方面的优良表现, 使得 JTAG技术得到广泛应用。 JTAG技术本身基于串 行接口, 因此处理效率是该技术的关键指标, 然而现有的专用 JTAG处理器件 或者其它处理器件, 无论是在处理性能, 还是在应用推广的成本上, 都不具 有优势。
现有的采用专用 JTAG处理器件实现的技术方案, 主要是使用专用芯片 + 业务中央处理器 ( Central Processing Unit, CPU ) 方式实现。
专用芯片提供相应的接口, 并在业务 CPU的控制下实现 JTAG数据的收 发, 具体比如, 业务 CPU负责运算处理通过专用芯片传输的 JTAG数据, 并 将处理的 JTAG数据下发到专用芯片;专用芯片则实现 JTAG数据流并串转换, 以及控制 JTAG接口中的测试复位输入(Test Reset, TRST )、 测试模式选择 ( Test Mode Select, TMS )、 测试数据输入( Test Data Input, TDI ) 以及测试 数据输出 (Test Data Output, TDO ), 测试时钟( Test Clock, TCK )数据的收 发。
如图 1所示的, 专用芯片处理 JTAG数据的操作方式为: 业务 CPU完成 所要发送的 JTAG数据的运算, 将 JTAG数据如 TMS、 TDI写入专用芯片对 应的地址, 专用芯片启动发送与接收 TDO数据, 业务 CPU此时等待专用芯 片处理, 直至专用芯片处理完成。 专用芯片处理完成后, 业务 CPU取回接收 到的数据后, 运算下一次需要发送的数据, 并将运算完成的数据写入专用芯 片的对应地址, 启动下一次 JTAG操作。 依次循环操作, 直至操作完成。
在实现本发明过程中, 发明人发现, 在整个操作过程中, 如图 1 所示, 业务 CPU处理(如 CPU的数据收发)与 JTAG数据流收发是串行交替进行的, CPU发送 JTAG数据后, 必须等待专用芯片与外部 JTAG接口的数据收发操 作完成, 才能进行下一次 CPU操作, 这样, 导致了专用芯片的数据收发是非 连续的, JTAG处理效率低。
发明内容
本发明所要解决的技术问题在于,提供一种 JTAG处理效率高的数据处理 方法、 控制器及系统。
一方面, 本发明的实施例提供了一种处理系统, 所述处理系统包括处理 器处理器和中断控制器, 所述处理系统还包括 JTAG加载控制器; 其中, 所述 JTAG加载控制器,用于执行所述 JTAG数据的发送和接收,并根据所述 JTAG 数据的发送和接收情况向所述中断控制器发送中断请求以完成所述 JTAG数 据收发的连续处理; 所述中断控制器,用于响应来自所述 JTAG加载控制器的 中断请求, 并将所述中断请求发送给所述处理器; 所述处理器, 用于处理所 述中断控制器发送的中断请求,并在所述 JTAG加载控制器进行 JTAG数据收 发时, 进行所述 JTAG数据处理。
另一方面, 本发明的实施例提供了一种 JTAG加载控制器, 所述控制器与 终端控制器相连, 所述控制器包括: 处理控制单元, 用于根据所述处理器的 控制信息在所述处理器进行 JTAG数据处理时,控制 JTAG数据收发的连续处 理;数据存储单元,用于在所述处理控制单元的控制下存储相应的 JTAG数据; 状态监控单元, 用于监控所述数据存储单元存储的 JTAG数据的处理状态, 并 根据配置向所述中断控制器上报或屏蔽相关处理状态; 时序控制接口, 用于 实现所述数据存储单元存储的 JTAG数据与外部串行数据的交互。
另一方面, 本发明的实施例还提供了一种处理系统的数据处理方法, 所 述处理系统包括处理器和 JTAG加载控制器, 所述方法包括: 所述处理器在所 述 JTAG加载控制器进行 JTAG数据收发时, 进行 JTAG数据处理; 当所述处 理器检测到所述 JTAG加载控制器内有空闲的存储空间时,则将所述处理器已 经处理完成的 JTAG数据存储到所述空闲的存储空间存储,否则所述处理器继 续进行 JTAG数据的处理。
另一方面, 本发明实施例还提供了一种处理系统的数据处理方法, 所述 处理系统包括处理器和 JTAG加载控制器, 所述方法包括: 所述 JTAG加载控 制器根据所述处理器的控制进行 JTAG数据连续收发;在所述 JTAG加载控制 器进行 JTAG数据发送的同时,当所述 JTAG加载控制器有空闲的存储空间时, 从所述处理器获得并存储所述处理器已经处理完成的 JTAG数据。
在本发明实施例中,由于处理器在所述 JTAG加载控制器进行 JTAG数据 收发时, 进行所述 JTAG数据处理, 并处理器速度快于 JTAG加载控制器的数 据收发的速度, 这样, 就保证了 JTAG加载控制器进行数据收发的连续性, 提 高了 JTAG处理的效率。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面 描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。 图 1是现有的 CPU处理与 JTAG数据流时序关系图;
图 2是本发明实施例中的处理系统的一个组成示意图;
图 3是本发明实施例中 MCU处理与 JTAG数据流时序关系图; 图 4是图 2中的 JLC的实施例的一个组成示意图;
图 5是图 4中数据存储单元中的寄存器模块的实施例的一个组成示意图; 图 5a是图 2中的处理控制单元的一个具体实施例的组成示意图; 图 6是图 4中数据存储单元中的緩存模块的实施例的一个组成示意图; 图 6a是图 2中的处理控制单元的另一个具体实施例的组成示意图; 图 Ί是本发明实施例中 TMS 自动发送模式下 JTAG对外接口 TDI, TMS,
TCK时序配合关系图;
图 8是本发明实施例中数据存储单元中的緩存模块的实施例的另一组成 示意图;
图 8a是本发明实施例中的緩存模块和处理控制单元的一种组成示意图; 图 9是本发明实施例中的处理系统的另一组成示意图;
图 10是本发明实施例中的处理系统的应用场景示意图;
图 11是本发明实施例中的处理系统的数据处理方法的一个流程示意图; 图 12是本发明是示例中的处理系统的数据处理方法中进行中断处理的一 个流程示意图;
图 13是本发明实施例中处理系统内部 MCU与 JLC配合操作的流程示意 图。 具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而 不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作 出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。 在现有技术中, 实现 JTAG技术时, 由于在专用芯片进行数据收发时, CPU不能并行的进行数据收发、 运算等处理, 使得 CPU发送 JTAG数据后, 必须等待发送操作完成, 才能进行下一次操作, 这大大影响了 JTAG的处理效 率, 为此, 本发明实施例中提出了一种处理系统中包括 JTAG 加载控制器 ( JTAG Loader Controller, JLC ) 的技术。
如图 2所示, 本发明实施例中所提供的处理系统包括处理器 1、 中断控制 器 2以及 JLC3。
在本发明实施例中所述的处理系统可以是集成在同一芯片中, 如集成为 一片上系统 (Systems on Chip, SOC ), 或是处理器和中断处理器集成在同一 芯片上, JLC用另一芯片实现。
其中, 所述处理器 1 , 用于对中断控制器 2和 JLC3进行控制, 并在 JLC3 进行数据收发时, 同步进行 JTAG数据处理。所述处理器 1可以为微控制单元 ( Micro Controller United, MCU )。
所述中断控制器 2, 用于响应来自所述 JLC3的中断请求, 并将所述中断 请求发送给所述处理器 1处理。
所述 JLC3 , 用于根据所述处理器 1的控制, 实现 JTAG数据的发送和接 收,根据所述 JTAG数据的发送和接收情况向所述中断控制器 2发送中断请求, 并实现 JTAG数据收发时的连续处理, 达到 TCK无等待处理。 由于处理器 1 的处理速度要高于 JLC3的数据收发速度,所以当 JLC3完成上一数据收发时, 处理器 1 处理完成的下一数据已经准备好可以由 JLC3 收发了, 因此, 对于 JLC3而言, 其数据收发可以实现连续进行。 即类似图 3的并行处理的方式。
同时, 由于 JLC3集成在处理系统中, 所以 JLC1和处理器 1之间的数据 地址总线为芯片内部的总线, 其总线效率也要相对于芯片间的总线效率高。
如图 4所示, JLC3 包括: 状态监控单元 30、 处理器接口 32、 处理控制 单元 34、 数据存储单元 36及时序控制接口 ( Serial Timing Control ) 38。
状态监控单元 30, 与数据存储单元 36相连, 用于监控内部 JTAG数据的 处理状态, 并根据配置向中断控制器上报或屏蔽相关处理状态, 从而让处理 器及时进行下一步处理。
处理器接口 32, 与所述处理器相连, 用于为所述处理器提供信息交互接 口。 即为处理器与 JLC 内的其他相关模块提供信息交互接口, 实现处理器与 JLC的 JTAG数据流交互。 本单元为可选。
处理控制单元 34, 与所述处理器接口 32相连, 用于通过处理器接口 32 从所述处理器接收控制信息,并根据所述控制信息在所述处理器进行 JTAG数 据处理时, 控制 JTAG数据收发的连续处理。 其中, 所述控制信息可以包括: 处理器对本处理控制单元 34的解锁使能、 TCK频率、 外部链任意互联、 发送 模式、 状态上报方式以及相关配置信息等。
数据存储单元 36, 与所述处理器接口 32和处理控制单元 34相连, 用于 在所述处理控制单元 34的控制下存储相应的 JTAG数据信号。 所述 JTAG数 据可以采用 JTAG数据链的形式存储并进行收发。
时序控制接口 38, 与所述数据存储单元 36相连, 用于实现将所述数据存 储单元 36存储的并行 JTAG数据与外部串行数据的交互。 其中, 实现数据交 互可包括实现串并双向转换, 将 TMS、 TCK. TDI、 TDO、 TRST数据转换为 符合 IEEE Std 1149.1标准的接口信号, 将 TDO中接收到的数据存放于对应 TDI位置中等。
其中, 所述数据存储单元 36进行数据存储时包括两种模式: 寄存器模式 和緩存模式。
模式一: 当为寄存器模式时, 数据存储单元 36包括寄存器模块 360, 该 寄存器模块 360用于通过寄存器模式, 在所述处理控制单元 34的控制下存储 相应的 JTAG数据。
根据保存数据的不同,如图 5所示, 寄存器模块 360具体可以包括: TMS 寄存器 3600, 用于存储所述处理器接口 32发送来的 TMS数据; 测试数据寄 存器 3602, 用于存储输入输出测试数据 (即 TDI、 TDO ); TCK寄存器 3604, 用于存储测试时钟信号的相关信息, 如 NOP TCK的个数; 寄存器模块还可进 一步包括: 复位寄存器 3606, 用于存储 TRST信号。
其中, 测试数据寄存器 3602中的发送数据长度可灵活配置。 复位寄存器 3606中的 TRST的值可直接反应外部接口 TRST的电平信号。 TCK寄存器 3604 中数值为需要发送的 NOP TCK个数。 当发送 NOP TCK时, 其他寄存器的相 关信号接口的状态均保持上一状态不变。
则相应的, 在模式一下, 如图 5a所示, 处理控制单元 34包括: 寄存器 模式控制模块 340, 用于控制所述处理器 1的 JTAG数据直接写入到对应的寄 存器中, 并在写入结束后使能相应数据的发送, 或用于控制时序控制接口 38 接收的 JTAG数据存储到对应的寄存器中。
其中, 寄存器中存储的 TMS和 TDI信号可独立发送, 发送其中任意一个 时, 其他状态保持不变。 当对于链上最后一个 TDI与 TMS需要配合发送时, 提供专用 TMS、 TDI寄存器组, 保证最后一个 TDI bit与尾部 TMS第一个 bit 共一个 TCK发送。 则寄存器模块 360还包括专用寄存器组 3608, 用于存储 TMS和 TDI配合发送时的数据; 如图 5a所示, 处理控制单元 34还包括共位 处理模块 342 , 用于当数据链上的 TMS和 TDI配合发送时, 利用所述专用寄 存器组 3608存储的数据将所述 TDI的最后一个比特和所述 TMS的第一个比 特在同一个测试时钟中发送。
模式一主要应用于对于 JTAG操作变换频繁,处理器参与配合度高, 而且 JTAG数据长度短的情形 , 由于采用了寄存器存储相关的数据 , 使得在这种模 式下操作更加灵活, 并可适应复杂处理。
模式二: 当为緩存模式时, 数据存储单元 36包括緩存模块 362, 用于通 过緩存模式, 在所述处理控制单元 34的控制下存储相应的 JTAG数据。
如图 6所示, 具体的, 所述緩存模块可进一步包括链头子模块 3620, 用 于存储 JTAG扫描链的链头 TMS; 链尾子模块 3622, 用于存储 JTAG扫描链 的链尾 TMS; 至少两个緩存子模块 3624, 用于存储所述处理器 1 发送来的 TDI, 或存储通过所述时序控制接口 38接收的 TDO。
其中, 根据对所述 JTAG扫描链链头 TMS和链尾 TMS的配置情况, 緩 存模式又可分为 TMS 自动发送模式和 TMS手动发送模式:
TMS 自动发送模式中,在处理器初次配置链头子模块 3620和链尾子模块 3622中存储的 TMS_H (链头 TMS )和 TMS_L (链尾 TMS )后, 处理器只 需要向緩存子模块中存放对应的 TDI值即可, 在进行后续 JTAG链收发时, 不需要改变链头 TMS和链尾 TMS的配置值, 处理器每次只需要更改緩存中 的 TDI值 , 从而减少处理器操作。
图 7为在 TMS自动发送模式下,一个緩存子模块中, JTAG对外接口 TDI, TMS, TCK时序配合关系图。 链头 TMS发送完成后, 緩存子模块中存储的 TDI开始发送。 当发送到最后一个 bit TDI时, 链尾 TMS与最后一个 bit TDI 共位, 即同时在一个 TCK下发送出去, 如图中共位所示。 在其他位置发送, TMS、 TDI之间均分开发送, 且在非发送时刻, 状态保持。
TMS手动发送模式中, 每次发送数据时, 均需要手动配置緩存中的链头 TMS和链尾 TMS的值, 緩存子模块依然按照 TMS 自动模式方式发送。 该种 模式应用场景主要是 JTAG链超长时, 单个 JTAG长度大于单个緩存长度, 无 法完成 TMS 自动配合时情况。 通过该种方式保证单链操作连续性, 提高处理 效率。
相应的, 在模式二下, 如图 6a所示, 所述处理控制单元 34 包括: 緩存 模式控制模块 344, 用于控制所述处理器 1 的 TDI写入到相应的緩存子模块 中, 并在写入结束后使能数据的发送, 在所述緩存子模块中的一数据链发送 完成后, 使能发送非空的緩存子模块中存储的下一数据链, 并可控制通过所 述时序控制接口 38接收的 TDO存储在空闲的緩存子模块中。 当然, 所述处 理控制单元 34可以既包括緩存模式控制模块 344, 也可以同时包括寄存器模 式控制模块 340和共位处理模块 342。
所以,在处理控制单元 34的控制下,当 JLC中有空闲的緩存时,即使 JLC 在收发期间, 处理器可以将运算完成的数据填写到剩余緩存, 如图 8 所示, 其中, Boundary表示緩存子模块, 当 Boundary 0中 TDI数据发送中, 此时其 它 Boundary为空闲状态, 处理器可以填写 TDI数据到剩余的空闲 Boundary 中, 填写完成后使能该 Boundary发送标志。 JLC发送完成上一个 Boundary 后, 自动顺序发送非空的 Boundary。 通过该种方式, 可以使得在緩存发送期 间, 处理器可以处理相关接收到的 TDO数据, 以及准备下一帧 TDI数据的发 送, 从而使得处理器处理与 JTAG数据发送并行执行。
发送过程中接收到 TDO数据会存放在对应位置发送的 Boundary中, 另 外任意緩存中数据在发送时, TDI数据会保持上一次操作后的值, 因此处理 器只需要更改对应修改位置, 不需要逐个地址填写, 从而减少处理器与 JLC 间的数据搬移, 提高交互效率。
当緩存模式应用于 JTAG加载 Flash时, 很多应用中会将 Flash写信号直 接通过 10引到处理器, 由处理器根据处理情况, 配合控制, 减少需要发送的 JTAG数据链条数, 从而提高升级效率。 该 10通常称为 DirectWe ( DW )。 由 于该操作是穿插在 JTAG链尾部, 因此当独立 10控制时, CPU需要单等待链 下发完成, 处理 DW, 这样必然会影响两条 JTAG数据链间操作连续性。
为此本发明实施例中,如图 8a所示,提供了包括 DW模块的緩存模块 362。 DW模块 3628, 用于存储 DW属性, 所述 DW属性作为相应 JTAG数据链的 一个配置属性。 在手动模式下, 该 DW由处理器处理控制。
为了能对 DW进行自动模式控制, 本发明实施例还提供了包括環控制 模块 346的处理控制单元。 DW控制模块 346, 用于当緩存中所述 JTAG数据 链发送完毕后, 按照所述 DW属性与下一条数据链同步发送对应脉冲。
在 DW 自动模式下, DW作为该 JTAG数据链一个配置属性, 每次在緩 存模块中配置该扫描链数据同时配置该 DW属性 , 当緩存模块中该条 JTAG 数据链发送完毕后, DW 会自动按照配置电平发送对应脉冲 (脉冲宽度可配 置), 且与下一条链同步发送, 不需要处理器参与, 从而达到了 JTAG操作多 条链的完全连续性。
如图 9所示, 为可进行寄存器模式和緩存模式发送, 以及可进行自动 DW 模式控制的处理系统组成示意图, 其中, 图中部分模块之间的信号连线未示。 其中, 中断控制器具体可为向量中断控制器 (VIC ); 处理器接口可为处理器 外设总线接口 ( Peripheral Bus Interface )。 寄存器模块包括: 模式选择寄存器 (图中简称为 TMS ), 输入输出寄存器(图中筒称为 TDI_TDO ) , 时钟寄存器 (图中简称为 TCK ) 以及复位寄存器 (图中简称为 TRST )。 緩存模块包括: 链头子模块和链尾子模块(图中示为 TMS_H和 TMS_T ), n个緩存子模块(图 中为 Boundary 0, ... ..., Boundary n ) 以及 DW模块(图中简称为 DW )。 同 时, 图中时序控制接口处还示意了输入输出的数据类型, 其中 n*表示为 n组 JTAG接口, 每组均包括 TRST、 TMS , TDI、 TCK、 TDO。
如图 10所示, 则是本发明实施例中的 SOC的一个应用场景。 釆用 SOC 实现本发明实施例的处理系统, 图中 FE为网口, 实现与远端 /近端网管交互。 BSC为边界扫描单元( Boundary Scan Cell )。MPU为主控业务 CPU,实现 JTAG 操作数据存储、 传输、 维护。 串行总线实现 SOC与主控通讯。 BSC为边界 扫描单元, Board为不同的业务单板, SOC负责完成 JTAG处理操作, 并返回 操作结果。
单板进行升级加载, 故障诊断, 互联测试等的 JTAG数据文件, 通过远端 后台网管或近端维护终端下载到主控单板存储介质中, 当需要进行 JTAG 升 级、测试操作时,主控板下发相关命令给对应需要处理的单板(即图中的 Board 0, ... ... , Board n ) 内部的 SOC, 触发该 SOC启动相关操作处理, SOC将操 作过程中完成的数据和操作结果返回给主控, 主控再上报网管。
在整个处理过程中, SOC是 JTAG数据处理运算的中心, 不需要主控参 与, 主控只负责数据发送, 收集处理结果。 即将 JTAG运算处理中心下移到各 个节点, 为分布式运算, 支持多节点同时进行 JTAG处理操作, 从而提高多个 单板同时操作时效率。 从本发明上述实施例中可以看出, 在处理系统中包括 JLC, 以及通过 JLC 与处理器的配合处理, 使得在处理系统处理 JTAG数据时, 可以实现 JLC测 试时钟的连续处理, 达到 TCK无等待收发, 提高了 JTAG数据处理的效率。
同时, 如图 11所示, 本发明实施例中还提供了一种数据处理方法, 该方 法包括:
1101、 处理器对 JLC进行控制, 使得所述 JLC可进行 JTAG数据的连续 处理, 达到 TCK无等待收发。 所述 JTAG数据以数据链的形式进行存储和收 发。
1102、 处理器在所述 JLC进行数据收发时, 同步进行 JTAG数据处理, 当所述处理器检测到所述 JLC 内有空闲的存储空间时, 则将所述处理器已经 处理完成的 JTAG数据存储到所述空闲的存储空间存储,否则所述处理器继续 进行 JTAG数据的处理。
其中, 1101和 1102可以是先后顺序执行, 也可以是同步执行, 步骤 1101 具体可为:
1、 处理器对所述 JLC进行配置。 其中, 该配置可以是处理器为 JLC配置 链头 TMS和链尾 TMS及其他相关控制信息等, 这样 JLC在完成该配置后可 以在处理器不参与的情况下, 完成与外部 JTAG接口之间的数据收发。
2、 JLC在完成当前数据链收发后,若所述 JLC还有其他待收发的数据链, 则所述 JLC根据所述配置继续进行相应数据的收发。
如图 12所示, 本发明实施例中的数据处理方法还包括处理中断的过程:
1201、 JLC在完成当前数据链收发后产生中断请求。
1202、 处理器根据上报的中断请求将
已经处理完的 JTAG数据发送至所述 JLC。
步驟 B中, 处理器继续进行 JTAG数据的处理包括: 处理器获得 JLC 中 从外部接收的 TDI, 并对所述 TDI进行处理。
如图 13 , 为本发明实施例中处理系统内部处理器(如 MCU ) 与 JLC配 合操作的流程示意图。
如该图所描述的处理系统内部 JTAG操作过程,共有三个部分:中断处理、 MCU处理、 JLC处理。 中断处理实现 JLC与 MCU间通讯, 及时将 JLC操作 情况上报 MCU。 MCU负责运算 JTAG操作数据, 并配置 JLC模块, 下发与 接收 JLC的数据。 JLC负责连续串并双向转换发送与接收 JTAG数据。 通过 三者间配合处理, 实现 MCU与 JLC处理的并行, 最终达到外部输出 JTAG数 据流连续性。
对图 13所示的流程具体描述如下:
1301、 MCU首先需要对 JLC进行配置, 并使能 JLC可进行 JTAG数据收 发;
1302、 在 JLC配置完成后, MCU向其发送收发控制命令, 控制 JLC开始 进行 JTAG数据收发, 则 JLC按照相应的流程进行数据收发: 1302.1、 检查緩 存是否有要收发的数据, 1302.2、 若有则通过时序控制接口进行 JTAG数据输 入 /输出, 1302.3、 在 JLC通过时序控制接口完成数据发送后产生收发完成信 号。 需要说明的是, 在时序控制接口进行收发时, 数据收发是同步进行的, 具体可参见 JTAG的相关标准。
MCU在下发了 JLC收发控制命令后, 根据中断的情况继续进行 JTAG数 据处理:
1303、 中断处理器根据 JLC发出的收发完成信号产生并向 MCU发送完 成中断, 同时释放标志;
1304、 MCU根据上述标志, 将已经处理完成的数据填入到 JLC緩存中;
1305、 MCU对 JLC的緩存是否空闲进行判断;
1306、 若 JLC没有空闲緩存, 则 MCU继续进行数据处理, 并在处理完 成后等待下一中断请求;
1307、若 JLC有空闲緩存,则 MCU将数据填入到空闲的緩存中,在 MCU 数据填入完成后继续进行其他数据处理或中断处理。 该流程中未示, MCU从 JLC处获取需要处理的 TDO数据的过程, 可以 理解该过程是在 MCU中对该 TDO数据进行处理前进行的。
从对本发明上述实施例的描述可以看出, 在 JLC进行数据收发时 , MCU 可同时获得 JLC从外部收到的待处理的 JTAG数据,并对 JTAG数据进行处理, 实现了 JLC的连续处理, 达到 TCK无等待收发, 提高了 JTAG数据处理的效 率。
以上所描述的装置实施例仅仅是示意性的 , 其中所述作为分离部件说明 的单元可以是或者也可以不是物理上分开的, 作为单元显示的部件可以是或 者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个网络 单元上。 可以根据实际的需要选择其中的部分或者全部模块来实现本实施例 方案的目的。 本领域普通技术人员在不付出创造性的劳动的情况下, 即可以 理解并实施。
通过以上的实施方式的描述, 本领域的技术人员可以清楚地了解到各实 施方式可借助软件加必需的通用硬件平台的方式来实现, 当然也可以通过硬 件。 基于这样的理解, 上述技术方案本质上或者说对现有技术做出贡献的部 分可以以软件产品的形式体现出来, 该计算机软件产品可以存储在计算机可 读存储介质中, 如 ROM/ AM、 磁碟、 光盘等, 包括若干指令用以使得一台 计算机设备(可以是个人计算机, 服务器, 或者网络设备等)执行各个实施 例或者实施例的某些部分所述的方法。
以上所述的实施方式, 并不构成对该技术方案保护范围的限定。 任何在 上述实施方式的精神和原则之内所作的修改、 等同替换和改进等, 均应包含 在该技术方案的保护范围之内。

Claims

权利 要求 书
1、 一种处理系统, 所述处理系统包括处理器和中断控制器, 其特征在于, 所述处理系统还包括 JTAG加载控制器;
其中, 所述 JTAG加载控制器, 用于执行所述 JTAG数据的发送和接收, 并 根据所述 JTAG数据的发送和接收情况向所述中断控制器发送中断请求以完成 所述 JTAG数据收发的连续处理;
所述中断控制器,用于响应来自所述 JTAG加载控制器的中断请求, 并将所 述中断请求发送给所述处理器;
所述处理器, 用于处理所述中断控制器发送的中断请求, 并在所述 JTAG加 载控制器进行 JTAG数据收发时, 进行所述 JTAG数据处理。
2、 如权利要求 1所述的处理系统, 其特征在于, 所述 JTAG加载控制器包 括:
处理控制单元, 用于从所述处理器接收控制信息, 并根据所述控制信息在 所述处理器进行所述 JTAG数据处理时, 控制所述 JTAG数据收发的连续处理; 数据存储单元, 用于存储 JTAG数据;
状态监控单元, 用于监控所述数据存储单元存储的 JTAG数据的处理状态 , 并根据配置向所述中断控制器上报或屏蔽相关处理状态;
时序控制接口, 与所述数据存储单元相连, 用于实现所述数据存储单元存 储的 JTAG数据与外部串行数据的交互。
3、 如权利要求 2所述的处理系统, 其特征在于, 所述数据存储单元包括: 寄存器模块, 用于通过寄存器模式存储 JTAG数据。
4、 如权利要求 3所述的处理系统, 其特征在于, 所述寄存器模块包括: TMS寄存器, 用于存储所述处理器接口发送来的 TMS数据;
测试数据寄存器, 用于存储输入输出的测试数据;
TCK寄存器, 用于存储测试时钟的相关信息;
所述处理控制单元包括: 寄存器模式控制模块, 用于控制所述处理器的 JTAG数据直接写入到对应的寄存器中, 并在写入结束后使所述 JTAG数据处于 可发送状态, 或用于控制时序控制接口接收的 JTAG数据存储到对应的寄存器 中。
5、 如权利要求 3所述的处理系统, 其特征在于,
所述寄存器模块还包括专用寄存器组,用于存储 TMS和 TDI配合发送时的 TMS和 TDI数据;
所述处理控制单元还包括共位处理模块, 用于当数据链上的 TMS 和 TDI 配合发送时, 利用所述专用寄存器组存储的数据将所述 TDI的最后一个比特和 所述 TMS的第一个比特在同一个测试时钟中发送。
6、 如权利要求 2所述的处理系统, 其特征在于, 所述数据存储单元包括: 緩存模块, 用于通过緩存模式,在所述处理控制单元的控制下存储 JTAG数 据, 所述 JTAG数据以 JTAG数据链形式存储。
7、 如权利要求 6所述的处理系统, 其特征在于, 所述緩存模块包括: 链头子模块, 用于存储 JTAG扫描链的链头 TMS;
链尾子模块, 用于存储 JTAG扫描链的链尾 TMS;
至少两个緩存子模块,用于存储所述处理器发送来的 TDI,或存储通过所述 时序控制接口接收的 TDO。
8、如权利要求 7所述的处理系统, 其特征在于, 所述处理控制单元还包括: 緩存模式控制模块, 用于控制所述处理器的 TDI写入到相应的緩存子模块 中, 并在写入结束后使所述 TDI处于可发送状态, 在所述緩存子模块中的 TDI 数据链发送完成后, 使能发送非空的緩存子模块中存储的下一数据链, 并可控 制通过所述时序控制接口接收的 TDO存储在空闲的緩存子模块中。
9、 如权利要求 7所述的处理系统, 其特征在于, 所述緩存模块还包括: DW模块, 用于存储 DW属性, 所述 DW属性是相应 JTAG数据的一个配 置属性。
所述处理控制单元还包括: DW控制模块, 用于当緩存中所述 JTAG数据链 发送完毕后, 按照所述 DW属性与下一条数据链同步发送对应脉冲。
10、 如权利要求 1 至 9中任一项所述的处理系统, 其特征在于, 所述处理 系统集成在同一芯片上。
11、 一种 JTAG加载控制器, 其特征在于, 所述控制器与处理器和中断控制 器相连, 所述控制器包括:
处理控制单元,用于根据所述处理器的控制信息在所述处理器进行 JTAG数 据处理时, 控制所述 JTAG数据收发的连续处理;
数据存储单元, 用于在所述处理控制单元的控制下存储所述 JTAG数据; 状态监控单元, 用于监控所述数据存储单元存储的 JTAG数据的处理状态, 并根据配置向所述中断控制器上报或屏蔽相关处理状态;
时序控制接口,用于实现所述数据存储单元存储的 JTAG数据与外部串行数 据的交互。
12、 如权利要求 11所述的控制器, 其特征在于, 所述数据存储单元包括: 寄存器模块, 用于通过寄存器模式, 在所述处理控制单元的控制下存储所 述 JTAG数据;
或 /和, 緩存模块, 用于通过緩存模式, 在所述处理控制单元的控制下存储 所述 JTAG数据。
13、 如权利要求 12所述的控制器, 其特征在于, 所述緩存模块包括: 链头子模块, 用于存储 JTAG扫描链的链头 TMS;
链尾子模块, 用于存储 JTAG扫描链的链尾 TMS;
至少两个緩存子模块,用于存储所述处理器发送来的 TDI,或存储通过所述 时序控制接口接收的 TDO;
所述处理控制单元还包括:
緩存模式控制模块, 用于控制所述处理器的 TDI写入到相应的緩存子模块 中, 并在写入结束后使该数据处于可发送状态, 在所述緩存子模块中的数据链 发送完成后, 使能发送非空的緩存子模块中存储的下一数据链, 并可控制通过 所述时序控制接口接收的 TDO存储在空闲的緩存子模块中。
14、 一种处理系统的数据处理方法, 其特征在于, 所述处理系统包括处理 器和 JTAG加载控制器, 所述方法包括:
所述处理器在所述 JTAG加载控制器进行 JTAG数据收发时,进行所述 JTAG 数据处理;
当所述处理器检测到所述 JTAG加载控制器内有空闲的存储空间时,则将所 述处理器已经处理完成的 JTAG数据存储到所述空闲的存储空间存储,否则所述 处理器继续进行所述 JTAG数据的处理。
15、 如权利要求 14所述的方法, 其特征在于, 所述处理器对所述 JTAG加 载控制器进行控制的步驟包括:
所述处理器对所述 JTAG加载控制器进行配置。
16、 如权利要求 15所述的方法, 其特征在于, 所述处理器对所述 JTAG加 载控制器进行配置包括:
所述处理器配置所述 JTAG加载控制器中的链头 TMS和链尾 TMS。
17、 如权利要求 14中任一项所述的方法, 其特征在于, 所述方法还包括: 所述处理器根据所述 JTAG 加载控制器产生的中断请求将已经处理完的
JTAG数据发送至所述 JTAG加载控制器。
18、一种处理系统的数据处理方法 , 所述处理系统包括处理器和 JTAG加载 控制器, 其特征在于, 所述方法包括:
所述 JTAG加载控制器根据所述处理器的控制进行 JTAG数据连续收发; 在所述 JTAG加载控制器进行 JTAG数据发送的同时, 当所述 JTAG加载控 制器有空闲的存储空间时, 从所述处理器获得并存储所述处理器已经处理完成 的 JTAG数据。
19、 如权利要求 18所述的方法, 其特征在于, 所述 JTAG加载控制器根据 所述处理器的控制进行 JTAG数据连续收发的步驟包括:
所述 JTAG加载控制器从所述处理器获得配置信息,并根据所述配置信息进 行配置;
所述 JTAG加载控制器在完成所述 JTAG数据收发后, 若所述 JTAG加载控 制器还有其他待收发的 JTAG数据,则所述 JTAG加载控制器根据所述配置继续 进行 JTAG数据的收发, 所述 JTAG数据以数据链形式进行收发。
PCT/CN2009/071868 2008-07-31 2009-05-20 一种数据处理方法、控制器及系统 WO2010012172A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200810029897.5 2008-07-31
CN 200810029897 CN101639516B (zh) 2008-07-31 2008-07-31 一种数据处理方法、控制器及系统

Publications (1)

Publication Number Publication Date
WO2010012172A1 true WO2010012172A1 (zh) 2010-02-04

Family

ID=41609938

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/071868 WO2010012172A1 (zh) 2008-07-31 2009-05-20 一种数据处理方法、控制器及系统

Country Status (2)

Country Link
CN (1) CN101639516B (zh)
WO (1) WO2010012172A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014008A (zh) * 2010-12-29 2011-04-13 华为技术有限公司 一种数据容灾方法及系统
CN114036097A (zh) * 2021-10-09 2022-02-11 中国航空工业集团公司洛阳电光设备研究所 一种提升光电产品维护性的国产fpga逻辑在线升级方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5507317B2 (ja) * 2010-04-12 2014-05-28 ルネサスエレクトロニクス株式会社 マイクロコンピュータ及び割込み制御方法
CN103077051B (zh) * 2012-12-28 2015-09-30 华为技术有限公司 加载处理电路、方法和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040123193A1 (en) * 2002-12-23 2004-06-24 Gass Lawrence H. Method and apparatus for enhanced parallel port JTAG interface
JP2006189305A (ja) * 2005-01-05 2006-07-20 Ricoh Co Ltd バウンダリスキャンテスト回路
KR100707297B1 (ko) * 2005-12-01 2007-04-12 (주)알파칩스 시스템 버스를 이용한 제이티에이지 테스트 장치
CN101097242A (zh) * 2006-06-27 2008-01-02 中兴通讯股份有限公司 一种边界扫描测试控制器及测试方法
CN101162438A (zh) * 2006-10-10 2008-04-16 北京中电华大电子设计有限责任公司 一种嵌入式处理器的调试技术
CN101193326A (zh) * 2007-04-24 2008-06-04 中兴通讯股份有限公司 用于多jtag链的自动测试装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1191532C (zh) * 2001-01-18 2005-03-02 深圳市中兴集成电路设计有限责任公司 一种同步串口控制器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040123193A1 (en) * 2002-12-23 2004-06-24 Gass Lawrence H. Method and apparatus for enhanced parallel port JTAG interface
JP2006189305A (ja) * 2005-01-05 2006-07-20 Ricoh Co Ltd バウンダリスキャンテスト回路
KR100707297B1 (ko) * 2005-12-01 2007-04-12 (주)알파칩스 시스템 버스를 이용한 제이티에이지 테스트 장치
CN101097242A (zh) * 2006-06-27 2008-01-02 中兴通讯股份有限公司 一种边界扫描测试控制器及测试方法
CN101162438A (zh) * 2006-10-10 2008-04-16 北京中电华大电子设计有限责任公司 一种嵌入式处理器的调试技术
CN101193326A (zh) * 2007-04-24 2008-06-04 中兴通讯股份有限公司 用于多jtag链的自动测试装置及方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014008A (zh) * 2010-12-29 2011-04-13 华为技术有限公司 一种数据容灾方法及系统
CN114036097A (zh) * 2021-10-09 2022-02-11 中国航空工业集团公司洛阳电光设备研究所 一种提升光电产品维护性的国产fpga逻辑在线升级方法
CN114036097B (zh) * 2021-10-09 2024-03-01 中国航空工业集团公司洛阳电光设备研究所 一种提升光电产品维护性的国产fpga逻辑在线升级方法

Also Published As

Publication number Publication date
CN101639516B (zh) 2013-08-28
CN101639516A (zh) 2010-02-03

Similar Documents

Publication Publication Date Title
JP7289341B2 (ja) 改善された二次相互接続ネットワークを備えたマルチプロセッサシステム
JP4037494B2 (ja) テストアクセスポート制御器及びそれを用いた有効な通信方法
US7035755B2 (en) Circuit testing with ring-connected test instrument modules
CN107704346B (zh) Soc芯片调试方法及调试系统
US8533543B2 (en) System for testing connections between chips
US6260092B1 (en) Point to point or ring connectable bus bridge and an interface with method for enhancing link performance in a point to point connectable bus bridge system using the fiber channel
JP2012520471A (ja) 汎用プロトコルエンジン
TW200530822A (en) Serial peripheral interface (SPI) apparatus with write buffer for improving data throughput
US7353307B2 (en) Linking addressable shadow port and protocol for serial bus networks
JPH10253719A (ja) Tapコントローラを有する集積回路
JPH10240572A (ja) 命令トレース供給方式
EP2434404A1 (en) Method and arrangement for streaming data profiling
WO2010012172A1 (zh) 一种数据处理方法、控制器及系统
US20140052881A1 (en) Systems and methods for concatenating multiple devices
JP4722221B2 (ja) 試験装置、同期モジュールおよび同期方法
US6526535B1 (en) Synchronous data adaptor
US20170045583A1 (en) Debug Adapter
WO2014059616A1 (zh) 加载方法、装置和系统
CN115529623B (zh) 一种基带单元测试装置、方法、终端设备以及存储介质
CN101888715A (zh) 具有usb通信和自定位功能的无线电基站及通信方法
US7478005B2 (en) Technique for testing interconnections between electronic components
CN101193005A (zh) 一种数字数据网络业务并行测试方法
Liu et al. Design of AXI-APB bus bridge verification platform
CN117616735A (zh) 一种数据传输装置、方法及相关设备
CN118095155A (zh) 基于通用验证方法学的反压过冲的功能仿真方法及系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09802365

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09802365

Country of ref document: EP

Kind code of ref document: A1