WO1999057638A1 - Risc-prozessor mit einer debug-schnittstelleneinheit - Google Patents
Risc-prozessor mit einer debug-schnittstelleneinheit Download PDFInfo
- Publication number
- WO1999057638A1 WO1999057638A1 PCT/DE1999/001252 DE9901252W WO9957638A1 WO 1999057638 A1 WO1999057638 A1 WO 1999057638A1 DE 9901252 W DE9901252 W DE 9901252W WO 9957638 A1 WO9957638 A1 WO 9957638A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- unit
- register
- execute
- risc processor
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
- G06F11/364—Software debugging by tracing the execution of the program tracing values on a bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
Definitions
- a reduced instruction set computer is referred to below as a RISC processor.
- the RISC processor is dimensioned for the lowest possible energy and space requirements and optimized for its respective purpose. In order to quickly find possible errors in complex processing procedures, it is helpful if the data processing procedures running within the RISC processor can be traced externally. However, in order to be able to understand the data processing procedures involved in troubleshooting, a large number of options for querying the register contents of the RISC processor are required.
- Access to the data temporarily stored in the registers in the pipeline of the RISC processor is very difficult, however, since register contents have to be accessed at different points in the pipeline of the RISC processor during troubleshooting. Access to the register data stored in the pipeline of the RISC processor is also made much more difficult if the RISC processor is integrated in an ASIC module together with a program memory.
- the invention has for its object to provide a RISC processor with a debug interface unit.
- Register contents can be read in real time.
- the invention has the advantage that the surface ei ⁇ nes RISC processor only to the area to be of a pin's ver ⁇ enlarges must, if the input and output interface I of the RISC processor is shared.
- Advertising provided to an efficient troubleshooting has the advantage that with the ring to the outside out command data, address data and the collgehö ⁇ Profitability, destination and source data all necessary infor mation ⁇ the.
- Figure 1 shows a structure of a RISC processor
- Figure 2 shows a structure of a debug interface unit.
- FIG. A structure of a RISC processor is shown schematically in FIG. This illustration shows the main components arranged in a pipeline of the RISC processor.
- the components are, for example, a sequence controller SC, an instruction decoder ID, a register read unit RR, an execute unit E, a debug interface unit DI arranged, for example, in a data transfer unit DT, a register Write unit RW, an input and output unit I / O and a register file RF.
- the sequence controller SC essentially supplies an address for reading the instruction code from an opcode memory OP for the instruction decoder ID.
- the opcode memory OP is, for example, in an area of a memory 3 Steins ROM arranged.
- CMD2 be from the instruction code at home struction decoder ID CMDO commands, CMD1, for which a ⁇ individual in the pipeline arranged units formed.
- the command data CMDx are then forwarded from the instruction decoder ID to the left and right to the units RR, E, DT, DI, RW or SC arranged in the pipeline.
- a command field is created for each of these units RR, E, DT, DI, RW or SC.
- the execute unit E are all arithmetic and logi ⁇ 's commands, all addition and subtraction as well as all logic operations that executed.
- a first bus system with an address bus between the program counter PCT and the opcode memory OP and a data bus between the opcode memory OP and the instruction decoder ID
- a further bus system with an address bus and a data bus between the data transfer unit DT and the input and output unit I.
- the command bus, each processing unit in the pipeline of the RISC processor is shown the address and data type of the current data (load, store or obcode).
- the opcooe addresses transported on the address bus of the first bus system are temporarily stored in a first register REG1 of the register file RF in order to be passed on to the debug interface unit DI in the subsequent processing step via an unused data connection line become.
- the free data connection path extends 4 via the register read unit RR to the first register SRC of the execute unit E.
- a first and second multiplexer MU1, MU2 and the debug interface unit DI integrated in the data transfer unit DT are controlled in such a way that the opcode addresses buffered in the first register SRC of the execute unit E are controlled output by the second multiplexer MU2 and the result data temporarily stored in the second register ALU of the execution unit E are output at the first multiplexer MU1.
- the debug interface unit DI who cached ⁇ the results data in a data register RD the opcode addresses in an address register RA and the command data in a command register RC.
- the data temporarily stored in the registers RD, RC, RA are forwarded via connecting lines to an electrical unit arranged externally on the RISC processor, not explicitly shown here, for output on a display.
- the command data are passed on to the read / write unit RW via a command data connection line and the result data via a data connection line for storage.
- the source address from the second register ALU of the execute unit E and the load command CMD1 are forwarded to the data transfer unit DT.
- the source data which were temporarily stored in the second register ALU of the execute unit E, are passed on the address bus to the input and output unit I and controlled by the 5 load interface command CMD1 forwarded via the second multiplexer MU2 of the debug interface unit DI to the address register RA of the debug interface unit DI.
- the source data read in via the data bus between the input and output unit I and the data transfer unit DT are, controlled by the load command CMD1, via the first multiplexer MU1 of the debug interface unit DI to the data register RD of the debug interface unit DI headed.
- the load command CMD1 in the command register RC, the source address in the address register RA and the source data in the data register RD are passed on to the external unit for output.
- the command and source data are also forwarded to the register W ⁇ te-Emheit RW, which is arranged after the data transfer unit DT.
- the store command CMD2 initiated by the program counter PCT in the sequence controller SC, is formed in the instruction decoder ID.
- the store command CMD2 reads the target data from a second register REG2 in the register file RF.
- the read target data are loaded into the first register SRC of the register read unit RR.
- the target data arrive from a register SRC of the register read unit RR m and a register SRC of the execute unit E.
- the store command CMD2 belonging to the target data is sent to the execute unit E via a separate command bus transfer.
- the destination address formed in the execution unit E which was temporarily stored in a further register ALU of the execution unit E, is passed on to the data transfer unit DT in the next processing step with the contents of the register SRC and the store command CMD2.
- the data transfer unit DT the data m of the debug interface unit DI are crossed out via the first and second multiplexer MU1, MU2.
- the target data which were read out of the second register REG2 in the register file RF and were temporarily stored in the register SRC of the execute unit E, are transferred to the first multiplexer MU1 6-fitting store command CMD2 in the data register RD Zvi ⁇ temporarily stored.
- the destination address that was temporarily stored in the register ALU Zvi ⁇ is applied also on the tiplexer the second Mul ⁇ MU2 store command CMD2 passed gister to the Adressre ⁇ RA and cached there.
- the data temporarily stored in the registers RA, RC and RD are passed on for output to the external reading unit or to the register write unit RW following the data transfer unit DT.
- FIG. 2 shows the debug interface unit DI integrated in the data transfer unit DT.
- This debug interface unit DI is connected on the input side to the outputs of the registers SRC, ALU and CMD of the execute unit E and to a connecting line that forwards the clock.
- the debug interface unit DI is connected to the register-write unit RW via the data line labeled LDAT and a command line labeled LCMD.
- the debug interface unit DI is connected via an address line LADR, the data line LDAT and command line LCMD to a reading unit outside the pipeline. This reading unit makes it very easy for an operator to access data from processing processes within the RISC processor.
- the opcode can then be added to the opcode addresses for an execute or jump command from a listing file.
- the first and second multiplexers MU1, MU2 are arranged in the debug interface unit DI.
- the multiplexers are controlled by command data CMDO, CMD1 and CMD2, which are present on the command line LCMD.
- a first data line LSRC connects the output of the register SRC of the execution unit E to a second input 2 of the first multiplexer MU1, a first input 0 of the second multiplexer MU2 and the data bus DAT of the input / output unit I.
- LALU line is a connection to a third input of the 0 th he ⁇ multiplexer MUL, a second input 1 of the second multiplexer MU2 and the address bus ADR, which leads to the input output unit I is prepared from the output of the register of the ALU Execute Unit E, .
- the output of the first multiplexer MU1 is connected to the data register RD and the output of the second multiplexer MU2 is connected to the address register RA.
- the command data CMDO, CMDL and CMD2 ⁇ time equal to the register data of the data register RD and address registers RA to the read-write unit RW abut, the command data is also latched in the command register RD.
- the register data of the second register ALU of the execute unit E are forwarded to the data register RD via the first multiplexer MU1.
- the data to be read in via the input / output unit I are passed on to the data register RD via the first multiplexer MUl and the data temporarily stored in the second register ALU of the execution unit E are passed on to the address register RA via the second multiplexer MU2 .
- the data of the first register SRC in the execute unit E are forwarded to the subsequent register via the first multiplexer MU1 and the data from the second register ALU of the execute unit E via the second multiplexer MU2.
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AT99929040T ATE231255T1 (de) | 1998-04-30 | 1999-04-28 | Risc-prozessor mit einer debug- schnittstelleneinheit |
EP99929040A EP1073958B1 (de) | 1998-04-30 | 1999-04-28 | Risc-prozessor mit einer debug-schnittstelleneinheit |
US09/674,352 US6766438B1 (en) | 1998-04-30 | 1999-04-28 | RISC processor with a debug interface unit |
DE59904047T DE59904047D1 (de) | 1998-04-30 | 1999-04-28 | Risc-prozessor mit einer debug-schnittstelleneinheit |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19819531.1 | 1998-04-30 | ||
DE19819531A DE19819531C1 (de) | 1998-04-30 | 1998-04-30 | RISC-Prozessor mit einer Debug-Schnittstelleneinheit |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1999057638A1 true WO1999057638A1 (de) | 1999-11-11 |
Family
ID=7866410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/DE1999/001252 WO1999057638A1 (de) | 1998-04-30 | 1999-04-28 | Risc-prozessor mit einer debug-schnittstelleneinheit |
Country Status (6)
Country | Link |
---|---|
US (1) | US6766438B1 (de) |
EP (1) | EP1073958B1 (de) |
CN (1) | CN1131477C (de) |
AT (1) | ATE231255T1 (de) |
DE (2) | DE19819531C1 (de) |
WO (1) | WO1999057638A1 (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702839B2 (en) * | 2005-04-12 | 2010-04-20 | Nokia Corporation | Memory interface for volatile and non-volatile memory devices |
US8694970B2 (en) | 2005-06-02 | 2014-04-08 | Seagate Technology Llc | Unified debug system with multiple user-configurable trace volumes and trace buffers |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5564028A (en) * | 1994-01-11 | 1996-10-08 | Texas Instruments Incorporated | Pipelined data processing including instruction trace |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2810068B2 (ja) * | 1988-11-11 | 1998-10-15 | 株式会社日立製作所 | プロセッサシステム、コンピュータシステム及び命令処理方法 |
US5274799A (en) * | 1991-01-04 | 1993-12-28 | Array Technology Corporation | Storage device array architecture with copyback cache |
US5513363A (en) * | 1994-08-22 | 1996-04-30 | Hewlett-Packard Company | Scalable register file organization for a computer architecture having multiple functional units or a large register file |
US5544311A (en) * | 1995-09-11 | 1996-08-06 | Rockwell International Corporation | On-chip debug port |
-
1998
- 1998-04-30 DE DE19819531A patent/DE19819531C1/de not_active Expired - Fee Related
-
1999
- 1999-04-28 WO PCT/DE1999/001252 patent/WO1999057638A1/de active IP Right Grant
- 1999-04-28 DE DE59904047T patent/DE59904047D1/de not_active Expired - Fee Related
- 1999-04-28 US US09/674,352 patent/US6766438B1/en not_active Expired - Lifetime
- 1999-04-28 AT AT99929040T patent/ATE231255T1/de not_active IP Right Cessation
- 1999-04-28 CN CN99805612A patent/CN1131477C/zh not_active Expired - Fee Related
- 1999-04-28 EP EP99929040A patent/EP1073958B1/de not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5564028A (en) * | 1994-01-11 | 1996-10-08 | Texas Instruments Incorporated | Pipelined data processing including instruction trace |
Non-Patent Citations (1)
Title |
---|
CIRCELLO J C ET AL: "A MECHANISM TO OUTPUT INTERNAL STATE INFORMATION DURING IDLE BUS CYCLES", MOTOROLA TECHNICAL DEVELOPMENTS, vol. 22, 1 June 1994 (1994-06-01), pages 24 - 26, XP000456705 * |
Also Published As
Publication number | Publication date |
---|---|
EP1073958B1 (de) | 2003-01-15 |
CN1131477C (zh) | 2003-12-17 |
EP1073958A1 (de) | 2001-02-07 |
ATE231255T1 (de) | 2003-02-15 |
DE19819531C1 (de) | 1999-12-02 |
DE59904047D1 (de) | 2003-02-20 |
US6766438B1 (en) | 2004-07-20 |
CN1298518A (zh) | 2001-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68929483T2 (de) | Datenprozessor mit einer Befehlseinheit, die einen Cachespeicher und einen ROM aufweist. | |
EP1146432B1 (de) | Umkonfigurierungs-Verfahren für programmierbare Bausteine während der Laufzeit | |
DE3424962C2 (de) | ||
DE69636861T2 (de) | Mikroprozessor mit Lade-/Speicheroperation zu/von mehreren Registern | |
DE19506435C2 (de) | Verfahren und Einrichtung zum Vermeiden von Rückschreibkonflikten zwischen einen gemeinsamen Rückschreibpfad verwendenden Ausführungseinheiten | |
DE69133571T2 (de) | Datenprozessor mit der Fähigkeit, zwei Befehle gleichzeitig auszuführen | |
DE19983098B4 (de) | Mehrfach-Bitanzeige zur Behandlung von Schreib-nach-Schreib-Fehlern und zur Eliminierung von Bypass-Komparatoren | |
DE112004001040B4 (de) | Verfahren und Datenprozessor mit reduzierter Operationsunterbrechung auf Grund von Operanden-Abhängigkeiten | |
DE1549474C3 (de) | Anordnung In einer elektronischen digitalen Datenverarbeitungsanlage zur Ausführung eines ersten Befehls und gleichzeitigen Decodierung eines folgenden Befehls | |
DE2533737C2 (de) | Mikroprozessor mit aufteilbarer Adressenschiene | |
DE4134392C2 (de) | Verfahren und Vorrichtung zum Ungültigmachen von Befehlen in Geräten mit Parallelverarbeitung | |
DE3307194C2 (de) | ||
DE4222275C2 (de) | Parallelprozessor und Betriebsverfahren für diesen | |
EP1117037B1 (de) | Datenverarbeitungsvorrichtung zum parallelen Verarbeiten von unabhängigen Prozessen (Threads) | |
DE2835110A1 (de) | Schneller echtzeit-rechneremulator | |
WO1999057638A1 (de) | Risc-prozessor mit einer debug-schnittstelleneinheit | |
DE60005830T2 (de) | Verfahren und vorrichtung zum steuern eines sprungverzögerungsschlitzes in einem pipelineprozessor | |
DE10303053A1 (de) | Registerumbenennung zum Reduzieren einer Umgehung und Erhöhen einer scheinbaren physischen Registergröße | |
DE60201511T2 (de) | Verfahren, system und computerprogrammprodukt zum manipulieren eines anweisungsflusses in einer pipeline eines prozessors | |
EP1260905B1 (de) | Programmgesteuerte Einheit | |
DE2846537C2 (de) | Mikroprogrammierte Datenverarbeitungseinrichtung | |
DE3603240C2 (de) | ||
DE19804146A1 (de) | Befehlsausgabe mit geringer Latenzzeit in einem Datenverarbeitungssystem mit außer-der-Reihe-Befehlsausführung | |
DE19945940C2 (de) | Verfahren und Vorrichtung zur Bearbeitung bedingter Sprungbefehle in einem Prozessor mit PIPELINE-Rechnerarchitektur | |
EP0108418B1 (de) | Vorrichtung zur Mikroprogramm-Steuerung eines Informationstransfers und Verfahren zu ihrem Betrieb |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 99805612.X Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): CN US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1999929040 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09674352 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 1999929040 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1999929040 Country of ref document: EP |