HK5294A - A data processor control unit having an interrupt service using instruction prefetch redirection - Google Patents

A data processor control unit having an interrupt service using instruction prefetch redirection Download PDF

Info

Publication number
HK5294A
HK5294A HK52/94A HK5294A HK5294A HK 5294 A HK5294 A HK 5294A HK 52/94 A HK52/94 A HK 52/94A HK 5294 A HK5294 A HK 5294A HK 5294 A HK5294 A HK 5294A
Authority
HK
Hong Kong
Prior art keywords
instruction
interrupt
instructions
normal
prefetched
Prior art date
Application number
HK52/94A
Other languages
German (de)
English (en)
Inventor
Kevin L. Kloker
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 HK5294A publication Critical patent/HK5294A/en

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Claims (4)

1. Procédé, dans un système de traitement de données comportant un processeur de données pour exécuter des instructions et une unité de commande (10) pour fournir sélectivement des instructions normales prélues en l'absence d'une demande d'interruption par un périphérique et pour fournir des instructions d'interruption prélues en réponse à une demande d'interruption, pour éliminer des cycles d'exécution pendant lesquels il n'y a pas d'instructions exécutées par le processeur de données associé au déroulement d'instructions d'interruption pour exécuter un programme de prise en charge d'interruption en réponse à une demande d'interruption, dans lequel une demande du périphérique pour interrompre le déroulement normal des instructions de l'unité de commande au processeur de données est détectée, ledit procédé étant caractérisé en ce qu'il consiste à:    fournir un signal de commande (Maintien) pendant une durée d'au moins un cycle d'instruction en réponse à la demande d'interruption du déroulement normal d'instructions;    réorienter les prélectures d'instructions normales pendant au moins un cycle d'instruction en réponse au signal de commande (Maintien) pour fournir au moins une prélecture d'instruction d'interruption, au moins ladite prélecture d'instruction d'interruption étant déclenchée avant que ladite exécution de prélectures d'instructions normales soit terminée; et à    réorienter au moins ladite prélecture d'instruction d'interruption après la durée au moins d'un cycle d'instruction du signal de commande (Maintien) pour continuer à assurer les prélectures d'instructions normales, lesdites prélectures d'instructions normales étant déclenchées avant qu'au moins ladite exécution de prélectures d'instructions normales soit terminée.
2. Procédé selon la revendication 1, caractérisé en outre en ce qu'il consiste à:    déclencher au moins une prélecture d'instruction d'interruption avant un décodage si une instruction normale la plus récemment prélue est une instruction à plusieurs mots qui n'est pas complètement prélue.
3. Procédé selon la revendication 1, caractérisé en outre en ce qu'il consiste à:    déclencher lesdites prélectures d'instructions normales avant un décodage si une instruction d'interruption la plus récemment prélue est une instruction à plusieurs mots qui n'est pas complètement prélue.
4. Unité de commande de processeur de données (10) pour fournir des instructions normales prélues pour leur exécution par un processeur de données qui peut être interrompu par un signal de demande d'interruption pour fournir au moins une instruction d'interruption prélue tout en réduisant au minimum la perte de cycles d'exécution d'instructions en temps système pendant une interruption, comprenant:    un bus d'adresse de programme (16) pour transmettre des adresses d'instructions normales et des adresses d'instructions d'interruption;    un moyen de mémorisation d'adresse de programme (14) couplé au bus d'adresse de programme (16) pour recevoir sélectivement, mémoriser et fournir des adresses d'instructions normales;    un moyen de mémorisation d'adresse de prélecture (30) couplé au bus d'adresse de programme (16) pour mémoriser sélectivement et fournir des adresses d'instructions normales;    un moyen de progression (28) comportant une entrée couplée au bus d'adresse de programme (16) et une sortie couplée au moyen de mémorisation d'adresse de prélecture (30) pour faire progresser sélectivement des adresses d'instructions mémorisées par le moyen de mémorisation d'adresse de prélecture (30) jusqu'à une adresse d'instruction qui suit;    ladite unité de commande de processeur de données (10) étant caractérisée par:    un moyen de commande d'interruption (34) pour fournir un signal de commande de lecture d'interruption en réponse à la détection du signal de demande d'interruption et avant un décodage si une instruction normale la plus récemment prélue est une instruction à plusieurs mots qui n'est pas complètement prélue, ledit signal de commande de lecture d'interruption effectuant une commande quand une adresse ou des adresses d'interruption prédéterminées d'un ensemble d'adresses d'interruption sont fournies au bus d'adresse de programme (16);    un moyen d'adressage d'interruption (36) couplé à la fois au bus d'adresse de programme (16) et au moyen de commande d'interruption (34) pour fournir sélectivement une adresse ou des adresses d'interruption prédéterminées d'un ensemble des adresses d'interruption au bus d'adresse de programme (16) en réponse à la fois au signal de demande d'interruption et au signal de lecture d'interruption;    un moyen à mémoire de programme (15) comportant une entrée couplée au bus d'adresse de programme (16) et une sortie pour fournir des instructions normales prélues et des instructions d'interruption prélues en réponse à des adresses d'instructions normales et à des adresses d'instructions d'interruption, respectivement;    un premier moyen de mémorisation d'instruction (18) comportant une entrée couplée au moyen à mémoire de programme (15) et au moyen de commande d'interruption (34), pour recevoir sélectivement, mémoriser et fournir des instructions et pour fournir un signal d'accusé de réception d'interruption indiquant qu'une instruction d'interruption est mémorisée;    un moyen décodeur d'instruction (22) comportant une première entrée couplée au premier moyen de mémorisation d'instruction (18) pour recevoir le signal d'accusé de réception d'interruption, une deuxième entrée couplée au premier moyen de mémorisation d'instruction (18) pour recevoir sélectivement une instruction, et une sortie pour fournir sélectivement des instructions décodées; et    un deuxième moyen de mémorisation d'instruction (24) comportant une première entrée couplée à la sortie du moyen décodeur d'instruction (22), une deuxième entrée pour recevoir le signal d'accusé de réception d'interruption, une sortie pour fournir sélectivement des instructions décodées au processeur de données, et une sortie pour fournir un signal de commande (Maintien) pendant une durée d'au moins un cycle d'instruction en réponse à la demande pour interrompre le déroulement normal des instructions, pour maintenir constant le contenu dudit moyen de mémorisation d'adresse de programme (14).
HK52/94A 1985-11-27 1994-01-20 A data processor control unit having an interrupt service using instruction prefetch redirection HK5294A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/802,491 US4709324A (en) 1985-11-27 1985-11-27 Data processor control unit having an interrupt service using instruction prefetch redirection
PCT/US1986/002466 WO1987003394A1 (fr) 1985-11-27 1986-11-10 Unite de commande d'un processeur de donnees ayant un service d'interruption utilisant une reorientation de prelecture d'instructions

Publications (1)

Publication Number Publication Date
HK5294A true HK5294A (en) 1994-01-28

Family

ID=25183841

Family Applications (1)

Application Number Title Priority Date Filing Date
HK52/94A HK5294A (en) 1985-11-27 1994-01-20 A data processor control unit having an interrupt service using instruction prefetch redirection

Country Status (13)

Country Link
US (1) US4709324A (fr)
EP (1) EP0247175B1 (fr)
JP (1) JPH083791B2 (fr)
KR (1) KR940009100B1 (fr)
CN (1) CN1009396B (fr)
AU (1) AU6779687A (fr)
CA (1) CA1265873A (fr)
DE (1) DE3681733D1 (fr)
FI (1) FI90804C (fr)
HK (1) HK5294A (fr)
IL (1) IL80499A (fr)
SG (1) SG130093G (fr)
WO (1) WO1987003394A1 (fr)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6282402A (ja) * 1985-10-07 1987-04-15 Toshiba Corp シ−ケンス制御装置
JPH0740225B2 (ja) * 1985-12-25 1995-05-01 日本電気株式会社 プログラムスキツプ動作制御方式
JPS6398737A (ja) * 1986-10-15 1988-04-30 Mitsubishi Electric Corp デ−タ処理装置
DE3856067T2 (de) * 1987-07-06 1998-06-10 Hitachi Ltd Datenprozessor mit einer Unterbrechungsfunktion
US5247628A (en) * 1987-11-30 1993-09-21 International Business Machines Corporation Parallel processor instruction dispatch apparatus with interrupt handler
US5822578A (en) * 1987-12-22 1998-10-13 Sun Microsystems, Inc. System for inserting instructions into processor instruction stream in order to perform interrupt processing
DE68927313T2 (de) * 1988-06-27 1997-05-07 Digital Equipment Corp Operandenspezifiererverarbeitung
JPH07120278B2 (ja) * 1988-07-04 1995-12-20 三菱電機株式会社 データ処理装置
US5019967A (en) * 1988-07-20 1991-05-28 Digital Equipment Corporation Pipeline bubble compression in a computer system
US5590293A (en) * 1988-07-20 1996-12-31 Digital Equipment Corporation Dynamic microbranching with programmable hold on condition, to programmable dynamic microbranching delay minimization
US5006980A (en) * 1988-07-20 1991-04-09 Digital Equipment Corporation Pipelined digital CPU with deadlock resolution
US5117498A (en) * 1988-08-19 1992-05-26 Motorola, Inc. Processer with flexible return from subroutine
JP2504149B2 (ja) * 1988-12-02 1996-06-05 三菱電機株式会社 命令キュ―管理装置
JPH0640316B2 (ja) * 1989-04-20 1994-05-25 工業技術院長 演算レジスタ上でのデータ待ち合せ実現方法
CA2019299C (fr) * 1989-06-22 2002-01-15 Steven Frank Systeme multiprocesseur a sources d'instructions multiples
JPH0437927A (ja) * 1990-06-01 1992-02-07 Sony Corp プロセッサの処理方法
US5287522A (en) * 1990-06-29 1994-02-15 Bull Hn Information Systems, Inc. External procedure invocation apparatus utilizing internal branch vector interrupts and vector address generation, in a RISC chip
JP2556182B2 (ja) * 1990-08-29 1996-11-20 三菱電機株式会社 デ−タ処理装置
JPH04318654A (ja) * 1991-02-13 1992-11-10 Hewlett Packard Co <Hp> マイクロプロセッサへの割り込みのリダイレクションシステム
JP2677719B2 (ja) * 1991-05-08 1997-11-17 富士通株式会社 情報処理装置
JP2682264B2 (ja) * 1991-05-21 1997-11-26 日本電気株式会社 プログラムカウンタ装置
JPH04346127A (ja) 1991-05-23 1992-12-02 Sony Corp 電子装置
US5297282A (en) * 1991-05-29 1994-03-22 Toshiba America Information Systems, Inc. Resume processing function for the OS/2 operating system
US5542076A (en) * 1991-06-14 1996-07-30 Digital Equipment Corporation Method and apparatus for adaptive interrupt servicing in data processing system
US5355490A (en) * 1991-06-14 1994-10-11 Toshiba America Information Systems, Inc. System and method for saving the state for advanced microprocessor operating modes
US5455909A (en) * 1991-07-05 1995-10-03 Chips And Technologies Inc. Microprocessor with operation capture facility
WO1993006549A1 (fr) * 1991-09-19 1993-04-01 Chips And Technologies, Inc. Systeme permettant d'effectuer des operations d'entree et de sortie vers et depuis un processeur
US5623665A (en) * 1992-01-13 1997-04-22 Sony Corporation Electronic apparatus for patching a read-only memory
JP3230262B2 (ja) * 1992-01-24 2001-11-19 ソニー株式会社 電子装置及びその固定情報修正方法
US5805902A (en) * 1993-07-02 1998-09-08 Elonex I.P. Holdings, Ltd. Structure and method for issuing interrupt requests as addresses and for decoding the addresses issued as interrupt requests
GB2281986B (en) * 1993-09-15 1997-08-06 Advanced Risc Mach Ltd Data processing reset
US5475822A (en) * 1993-11-15 1995-12-12 Motorola, Inc. Data processing system for resuming instruction execution after an interrupt and method therefor
JPH07244649A (ja) * 1994-03-08 1995-09-19 Fujitsu Ltd 割込処理分散方式
US5889973A (en) * 1995-03-31 1999-03-30 Motorola, Inc. Method and apparatus for selectively controlling interrupt latency in a data processing system
US6052801A (en) * 1995-05-10 2000-04-18 Intel Corporation Method and apparatus for providing breakpoints on a selectable address range
US5659679A (en) * 1995-05-30 1997-08-19 Intel Corporation Method and apparatus for providing breakpoints on taken jumps and for providing software profiling in a computer system
US5740413A (en) * 1995-06-19 1998-04-14 Intel Corporation Method and apparatus for providing address breakpoints, branch breakpoints, and single stepping
US5621886A (en) * 1995-06-19 1997-04-15 Intel Corporation Method and apparatus for providing efficient software debugging
US5687339A (en) * 1995-09-14 1997-11-11 Elan Microelectronics Corp. Pre-reading and pre-decoding of instructions of a microprocessor within single cycle
US5954819A (en) * 1996-05-17 1999-09-21 National Semiconductor Corporation Power conservation method and apparatus activated by detecting programmable signals indicative of system inactivity and excluding prefetched signals
US6785803B1 (en) * 1996-11-13 2004-08-31 Intel Corporation Processor including replay queue to break livelocks
US5907712A (en) * 1997-05-30 1999-05-25 International Business Machines Corporation Method for reducing processor interrupt processing time by transferring predetermined interrupt status to a system memory for eliminating PIO reads from the interrupt handler
US5905880A (en) * 1997-09-29 1999-05-18 Microchip Technology Incorporated Robust multiple word instruction and method therefor
US5901309A (en) * 1997-10-07 1999-05-04 Telefonaktiebolaget Lm Ericsson (Publ) Method for improved interrupt handling within a microprocessor
US6044430A (en) 1997-12-17 2000-03-28 Advanced Micro Devices Inc. Real time interrupt handling for superscalar processors
US6275924B1 (en) * 1998-09-15 2001-08-14 Texas Instruments Incorporated System for buffering instructions in a processor by reissuing instruction fetches during decoder stall time
US7401205B1 (en) * 1999-08-13 2008-07-15 Mips Technologies, Inc. High performance RISC instruction set digital signal processor having circular buffer and looping controls
US6889279B2 (en) * 2000-12-11 2005-05-03 Cadence Design Systems, Inc. Pre-stored vector interrupt handling system and method
US20020184566A1 (en) 2001-06-01 2002-12-05 Michael Catherwood Register pointer trap
US6985986B2 (en) 2001-06-01 2006-01-10 Microchip Technology Incorporated Variable cycle interrupt disabling
US7020788B2 (en) 2001-06-01 2006-03-28 Microchip Technology Incorporated Reduced power option
US6952711B2 (en) 2001-06-01 2005-10-04 Microchip Technology Incorporated Maximally negative signed fractional number multiplication
US7007172B2 (en) 2001-06-01 2006-02-28 Microchip Technology Incorporated Modified Harvard architecture processor having data memory space mapped to program memory space with erroneous execution protection
US7003543B2 (en) 2001-06-01 2006-02-21 Microchip Technology Incorporated Sticky z bit
US6976158B2 (en) 2001-06-01 2005-12-13 Microchip Technology Incorporated Repeat instruction with interrupt
US6937084B2 (en) 2001-06-01 2005-08-30 Microchip Technology Incorporated Processor with dual-deadtime pulse width modulation generator
US6934728B2 (en) 2001-06-01 2005-08-23 Microchip Technology Incorporated Euclidean distance instructions
US6975679B2 (en) 2001-06-01 2005-12-13 Microchip Technology Incorporated Configuration fuses for setting PWM options
US7467178B2 (en) 2001-06-01 2008-12-16 Microchip Technology Incorporated Dual mode arithmetic saturation processing
GB2400198B (en) 2003-04-04 2006-04-05 Advanced Risc Mach Ltd Controlling execution of a block of program instructions within a computer processing system
US7200719B2 (en) * 2003-07-31 2007-04-03 Freescale Semiconductor, Inc. Prefetch control in a data processing system
JP4247132B2 (ja) * 2004-01-29 2009-04-02 株式会社ルネサステクノロジ 情報処理装置
CN102141904B (zh) * 2011-03-31 2014-02-12 杭州中天微系统有限公司 支持中断屏蔽指令的数据处理器
CN104011684B (zh) * 2011-12-22 2018-01-26 英特尔公司 具有内嵌中断服务功能的中断返回指令
CN111190658B (zh) * 2020-01-08 2023-02-28 乐鑫信息科技(上海)股份有限公司 一种基于片内执行且在不具有MMU的SoC片上支持应用程序动态加载的系统
CN113672360B (zh) * 2021-07-07 2025-03-14 杭州中天微系统有限公司 中断处理单元、相关装置和方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1059639A (fr) * 1975-03-26 1979-07-31 Garvin W. Patterson Systeme de prise en charge anticipee des instructions fonctionnant en pipe line
US4181934A (en) * 1976-12-27 1980-01-01 International Business Machines Corporation Microprocessor architecture with integrated interrupts and cycle steals prioritized channel
US4339793A (en) * 1976-12-27 1982-07-13 International Business Machines Corporation Function integrated, shared ALU processor apparatus and method
US4210960A (en) * 1977-09-02 1980-07-01 Sperry Corporation Digital computer with overlapped operation utilizing conditional control to minimize time losses
EP0020931B1 (fr) * 1979-06-21 1984-10-10 International Business Machines Corporation Dispositif exécutant des opérations d'interruption de programme pour processeur du type à appel anticipé des instructions
US4527237A (en) * 1979-10-11 1985-07-02 Nanodata Computer Corporation Data processing system
US4402042A (en) * 1980-11-24 1983-08-30 Texas Instruments Incorporated Microprocessor system with instruction pre-fetch
JPS57130998A (en) * 1981-02-04 1982-08-13 Japan Found Cancer Human interferon-beta-gene
US4399507A (en) * 1981-06-30 1983-08-16 Ibm Corporation Instruction address stack in the data memory of an instruction-pipelined processor
IE54592B1 (en) * 1982-03-08 1989-12-06 Genentech Inc Anumal interferons, processes involved in their production, compositions containing them, dna sequences coding therefor and espression vehicles containing such sequences and cells transformed thereby
DE3220116A1 (de) * 1982-05-28 1983-12-01 Dr. Karl Thomae Gmbh, 7950 Biberach Mikrobiologisch hergestellte (alpha)- und ss-interferone, dna-sequenzen, die fuer diese interferone codieren, mikroorganismen, die diese genetische information enthalten, und verfahren zu ihrer herstellung
EP0134831B1 (fr) * 1983-09-16 1987-01-07 Ibm Deutschland Gmbh Dispositif dans le circuit de commande d'un processeur en pipe-line pour interruption et répétition d'une instruction
US4586130A (en) * 1983-10-03 1986-04-29 Digital Equipment Corporation Central processing unit for a digital computer

Also Published As

Publication number Publication date
IL80499A0 (en) 1987-02-27
EP0247175A1 (fr) 1987-12-02
FI90804C (fi) 1994-03-25
FI873030A7 (fi) 1987-07-08
EP0247175B1 (fr) 1991-09-25
JPH083791B2 (ja) 1996-01-17
KR940009100B1 (ko) 1994-09-29
JPS63501454A (ja) 1988-06-02
FI90804B (fi) 1993-12-15
CA1265873A (fr) 1990-02-13
US4709324A (en) 1987-11-24
DE3681733D1 (de) 1991-10-31
CN1009396B (zh) 1990-08-29
EP0247175A4 (fr) 1988-03-22
FI873030A0 (fi) 1987-07-08
IL80499A (en) 1990-06-10
WO1987003394A1 (fr) 1987-06-04
KR880700969A (ko) 1988-04-13
CN86107934A (zh) 1987-08-12
AU6779687A (en) 1987-07-01
SG130093G (en) 1994-02-25

Similar Documents

Publication Publication Date Title
EP0247175B1 (fr) Unite de commande d&#39;un processeur de donnees ayant un service d&#39;interruption utilisant une reorientation de prelecture d&#39;instructions
US5222223A (en) Method and apparatus for ordering and queueing multiple memory requests
US4775927A (en) Processor including fetch operation for branch instruction with control tag
US7260706B2 (en) Branch misprediction recovery using a side memory
US5276882A (en) Subroutine return through branch history table
US4742451A (en) Instruction prefetch system for conditional branch instruction for central processor unit
US6209086B1 (en) Method and apparatus for fast response time interrupt control in a pipelined data processor
US6108768A (en) Reissue logic for individually reissuing instructions trapped in a multiissue stack based computing system
JPS6323586B2 (fr)
US5687381A (en) Microprocessor including an interrupt polling unit configured to poll external devices for interrupts using interrupt acknowledge bus transactions
US5146570A (en) System executing branch-with-execute instruction resulting in next successive instruction being execute while specified target instruction is prefetched for following execution
US6275903B1 (en) Stack cache miss handling
US5948093A (en) Microprocessor including an interrupt polling unit configured to poll external devices for interrupts when said microprocessor is in a task switch state
US6237086B1 (en) 1 Method to prevent pipeline stalls in superscalar stack based computing systems
US5590293A (en) Dynamic microbranching with programmable hold on condition, to programmable dynamic microbranching delay minimization
US6170050B1 (en) Length decoder for variable length data
EP0324952A2 (fr) Circuit de branchement pour un processeur en pipeline
US7613911B2 (en) Prefetching exception vectors by early lookup exception vectors within a cache memory
EP0116600B1 (fr) Mecanisme de calcul de l&#39;adresse suivante d&#39;une instruction avant son execution
JPS60241136A (ja) デ−タ処理装置
EP0270873A2 (fr) Système de calculateur à unité arithmétique et logique unique
JPH0855033A (ja) 情報処理装置
JPS62251943A (ja) チヤネル装置のメモリアドレス制御方式
JPH04145531A (ja) マイクロプログラム制御装置
JPH0659916A (ja) 命令プリフェッチ装置

Legal Events

Date Code Title Description
PF Patent in force
AS Change of ownership

Owner name: FREESCALE SEMICONDUCTOR, INC.

Free format text: FORMER OWNER(S): MOTOROLA INC

PE Patent expired

Effective date: 20061109