WO2010029682A1 - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
WO2010029682A1
WO2010029682A1 PCT/JP2009/003710 JP2009003710W WO2010029682A1 WO 2010029682 A1 WO2010029682 A1 WO 2010029682A1 JP 2009003710 W JP2009003710 W JP 2009003710W WO 2010029682 A1 WO2010029682 A1 WO 2010029682A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
cpu
bus command
bit
command
Prior art date
Application number
PCT/JP2009/003710
Other languages
French (fr)
Japanese (ja)
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 株式会社ルネサステクノロジ
Priority to US13/062,508 priority Critical patent/US20110238883A1/en
Priority to JP2010528600A priority patent/JPWO2010029682A1/en
Priority to EP09812831A priority patent/EP2328075A4/en
Priority to CN2009801352429A priority patent/CN102150132A/en
Publication of WO2010029682A1 publication Critical patent/WO2010029682A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction

Definitions

  • the present invention relates to a bit operation of a register included in a peripheral module coupled to an information processing apparatus, particularly a CPU (central processing unit).
  • a CPU central processing unit
  • the information processing apparatus includes a microprocessor, a microcontroller, a signal processor, an image processor, and a sound processor.
  • a microprocessor which is an example of an information processing device, shortens data access time from a CPU to each peripheral module in a chip in order to perform bit manipulation processing, which is one of data processing inside a semiconductor chip, at high speed. There is a need. In order to shorten the access time, it is widely performed to improve the operating frequency of the microprocessor, increase the speed of the bus to which each peripheral module in the chip is connected, and add a new instruction for bit manipulation.
  • a microprocessor has conventionally been configured to process data in a certain unit (8 bits / 16 bits / 32 bits) with respect to peripheral registers, memories, etc., and a bit operation for operating only one bit is directly performed by a peripheral module. I can't tell you. For this reason, when performing bit operations, data is once read into the CPU from a peripheral register or memory in a certain unit (8 bits / 16 bits / 32 bits), and only one bit in the read data is changed, A read-modify-write (hereinafter abbreviated as “RMW”) operation for writing back to the peripheral module again is required.
  • RMW read-modify-write
  • Patent Document 1 As such a bit operation method that does not require an RMW operation, a method as described in Patent Document 1 can be cited.
  • a memory address area is added in order to allocate a 32-bit address for each bit to be operated, and a normal instruction (write instruction) is added to the added memory address area.
  • a technique is disclosed in which a desired bit operation can be performed when data is written. By writing data to the additional memory address area in a certain unit (8 bits / 16 bits / 32 bits), there is no need to read the data into the CPU for modification, that is, no RMW operation is required in the CPU, and bit manipulation is performed. The speed can be increased. Further, since the additional memory address area is accessed with a normal instruction, there is no need to add a new instruction for bit manipulation.
  • a memory address area having a certain bit width (8 bits / 16 bits / 32 bits) is added for bit manipulation, and a normal instruction (8 bits / 16 bits) is added to the memory address area.
  • a method is disclosed in which, when data is written in units of / 32-bit units), a LSU (load store unit) converts a write operation into an RMW operation and performs a bit operation. According to this, since the bit operation is performed by the LSU, the CPU only has to write data in the added memory address area, and the execution time of the bit operation processing of the CPU is shortened.
  • An object of the present invention is to provide a technique for performing a bit operation without degrading bus performance.
  • Another object of the present invention is not to add a memory address area but to add a new bus command (1-bit write operation command) and connect a bus state controller for controlling peripheral modules connected to the external address space.
  • the purpose is to provide a technology for speeding up the bit operation by grasping the module bus command support / non-support status, switching between the new bus command and the old bus command.
  • the information processing apparatus includes a CPU that can fetch and execute an instruction, and a peripheral module that includes a register that can be rewritten by the CPU and is coupled to the CPU by a bus.
  • the CPU includes a function of issuing a bus command for instructing a bit-unit write operation to a register included in the peripheral module in order to execute the fetched bit manipulation instruction.
  • the peripheral module performs a bit-by-bit write operation on the register. This eliminates the need for the CPU to lock the bus after issuing the bus command. This allows bit operations to be performed without degrading the bus performance.
  • bit operations can be performed without degrading bus performance.
  • a new bus command is added, and the bus state controller switches between the new bus command and the old bus command to perform bit operations, so even if modules compatible with the old and new bus commands are mixed, it is possible to speed up bit operations. .
  • FIG. 1 is an explanatory diagram of a bus command switching type bit operation in a microcomputer as an example of an information processing apparatus according to the present invention.
  • FIG. 2 is a block diagram illustrating a configuration example of the microcomputer.
  • FIG. 3 is a block diagram showing a configuration example of the bus state controller in the microcomputer.
  • FIG. 4 is a block diagram illustrating a configuration example of the command determination controller in the bus state controller.
  • FIG. 5 is a block diagram showing a configuration example of functional modules corresponding to the new bus command BC1 in the microcomputer.
  • FIG. 6 is a flowchart of the bit operation in the microcomputer.
  • FIG. 7 is an explanatory diagram of a bit operation example of the module corresponding to the new bus command BC1 and the non-corresponding module.
  • An information processing apparatus (10) includes a CPU (101, 102) that can fetch and execute an instruction and a register that can be rewritten by the CPU.
  • the CPU includes peripheral modules (M1, M2, M3) coupled by a bus.
  • the CPU includes a function of issuing a bus command for instructing a bit-unit write operation to a register included in the peripheral module in order to execute the fetched bit manipulation instruction.
  • the CPU executes a bit unit write operation on the register in the peripheral module. For this reason, after the bus command is issued, it is not necessary to lock the bus, so that bit operations can be performed without degrading the performance of the bus.
  • the peripheral module includes a bit operation controller that executes a write operation in bit units for the register in response to the bus command issued from the CPU.
  • the information processing apparatus (10) includes a CPU (101, 102) capable of issuing a bus command for instructing a write operation in bit units when executing a fetched instruction, and the CPU is a bus And peripheral modules (M1, M2, M3) coupled together.
  • the peripheral module includes a register (52) that can be rewritten by the CPU and a bit operation controller (51) that executes a write operation in bit units for the register in response to the bus command.
  • the bus command issued from the CPU may be transmitted to the bit manipulation controller via the bus.
  • the bus command issued from the CPU can be transmitted to the bit operation controller via a dedicated line.
  • a bus command can be transmitted at a higher speed than when a bus is used.
  • the information processing apparatus (10) includes a CPU (101, 102) capable of issuing a bus command for instructing a write operation in bit units when executing a fetched instruction, and the CPU is a bus
  • the peripheral modules (M1, M2, M3) coupled by the above-mentioned bus and the bus state controller (105) coupled to the bus and performing the bus state control.
  • the bus state controller has a first circuit (31) that makes it possible to identify whether or not the peripheral module supports the bus command, and a format in which the peripheral module supports the first bus command from the CPU.
  • a second circuit (32) that can be converted into a second bus command, a first bus command transmitted from the CPU based on an identification result in the first circuit, and a second bus output from the second circuit
  • a third circuit (33) capable of selectively outputting a command to the peripheral module.
  • the bus state controller receives the first bus command from the CPU, and determines whether to output the first bus command or convert the first bus command into the second bus command. As a result, the CPU only needs to output the first bus command of the 1-bit write operation. Even if the bus state controller outputs the second bus command and the RMW operation occurs, the CPU waits for the completion of the RMW operation. Since other instructions can be executed, bit operations can be performed without degrading the performance of the bus.
  • FIG. 2 shows a microcomputer as an example of an information processing apparatus according to the present invention.
  • a microcomputer 10 shown in FIG. 2 includes a plurality of CPUs 101 and 102, a bus state controller (BSC) 105, and a plurality of peripheral modules (Modules) M1, M2, and M3.
  • Single-crystal silicon is manufactured by a known semiconductor integrated circuit manufacturing method. It is formed on one semiconductor substrate such as a substrate.
  • the CPUs 101 and 102 are coupled to the first bus 103, and the peripheral modules M1, M2, and M3 are coupled to the second bus 104.
  • the first bus 103 and the second bus 104 are coupled via a bus state controller 105.
  • An external memory 20 is disposed outside the microcomputer 10.
  • the external memory 20 includes a peripheral module M4.
  • Each of the CPUs 101 and 102 fetches an instruction from a program memory (not shown) and executes it.
  • Each of the peripheral modules M1, M2, M3, and M4 has a predetermined function.
  • FIG. 1 schematically shows a bus command switching type bit operation in the microcomputer 10 shown in FIG.
  • the CPUs 101 and 102 output the new bus command BC1 (first bus command) to the bus state controller 105, and the bus state controller 105 outputs a new bus command for each peripheral module.
  • the bit operation is performed by determining the correspondence / non-correspondence and switching between the new bus command and the old bus command (second bus command). According to this operation method, even if a peripheral module connected to the bus includes a new bus command compatible module and a new bus command non-compatible module, the bit operation can be executed.
  • the peripheral modules M1 and M2 correspond to both the new bus command BC1 and the old bus command BC2
  • the peripheral modules M3 and M4 correspond only to the old bus command BC2.
  • the bit operation can be speeded up as described below, and for the new bus command non-compatible module, the bus state controller 105 receives the new bus command BC1. Is converted into the old bus command BC2, and the RMW operation conventionally performed by the CPU is executed. That is, the CPUs 101 and 102 can execute a bit operation only by issuing a new bus command BC1 to the bus state controller 105, and can execute other instructions immediately after the new bus command BC1 is output. . Further, since the new bus command corresponding modules M1 and M2 can perform a 1-bit write operation instead of an RMW operation, the bit operation itself can be speeded up.
  • the bus command is a bit unit (for example, 8 bits or 10 bits) issued to the peripheral module by the instruction interpretation module (decoder) in the CPU in order to execute the instruction fetched by the CPUs 101 and 102. Etc.).
  • the CPU 101 or 102 reads an instruction from a program memory (not shown) in which a bit operation instruction is stored, and interprets the instruction with a decoder in the CPU.
  • This decoder outputs a bus command such as read or write, which is an instruction for instructing the peripheral module to perform the operation of the peripheral module necessary for executing the bit manipulation instruction after interpreting the instruction.
  • the bus command is input from the CPU 101 or 102 to the peripheral module via the dedicated line or the buses 103 and 104. When a dedicated line is used, a bus command can be transmitted faster than when the buses 103 and 104 are used.
  • the proposed new bus command BC1 (first bus command) is an extension of the old bus command BC2 (second bus command).
  • the old bus command BC2 includes read and write as described above.
  • the old bus command BC2 is a command for instructing reading or writing in units of bytes or words, and is not a command for instructing writing in units of 1 bit.
  • the new bus command BC1 is a command for instructing a write operation in 1-bit units.
  • bit manipulation information There are two ways to embed bit manipulation information and bit manipulation information.
  • the first is a method of embedding in an empty area of data.
  • the data access unit is a byte or word unit
  • the write unit is a 1-bit unit.
  • a new bus command is a command for accessing data in units of bytes and operating only one bit in the byte data.
  • the bit position of the bit operation and the bit operation information at this time are embedded in the upper free bits of the data.
  • the second method is to add bit position information and bit operation information to the bus command.
  • the first method embeds bit position information and bit operation information in the upper free bits of data, so the data access unit is limited to byte units or word units.
  • the second method adds operation bit position information and bit operation information to the bus command, the data access unit can be set to other than bytes and words.
  • the bus state controller 105 outputs the new bus command BC1 received from the CPU as it is and executes a 1-bit write operation in order to realize a high bit operation speed, or
  • the new bus command BC1 is converted into the old bus command BC2 and output, and the RMW operation is executed.
  • the configuration and operation of the bus state controller 105 will be described with reference to FIG.
  • FIG. 3 shows a configuration example of the bus state controller 105.
  • the bus state controller 105 has the following four peripheral modules. That is, a command determination controller (CJC) 31, an RMW module (RMW_Mod) 32, a bus command selector (BC_SEL) 33, and a data selector (D_SEL) 34.
  • CJC command determination controller
  • RMW_Mod RMW module
  • BC_SEL bus command selector
  • D_SEL data selector
  • the command determination controller 31 determines whether the new bus command received from the CPUs 101 and 102 is new bus command supported / not supported for each new bus command supported module and new bus command not supported module connected to the bus. It has a function of determining whether to output a bus command as it is or to convert a new bus command into an old bus command and output it.
  • the RMW module 32 executes the output of the old bus command BC2 and the RMW operation when the command determination controller 31 determines to output the old bus command.
  • the bus command selector 33 uses the new bus command BC1 output from the command determination controller 31 and the old bus command BC2 output from the RMW module 32 as a BC2_SEL (old bus command selection signal) signal output from the RMW module 32. Select with.
  • the data selector 34 selects whether to output the data (DATA) from the CPUs 101 and 102 as it is or to output the DATA_RMW from the RMW module 32 using BC2_SEL output from the RMW module 32.
  • the command determination controller 31 receives the new bus command BC1 and the address ADR from the CPUs 101 and 102, outputs BC1 as it is, and registers the register group I_Reg having new bus command support / non-support information for each peripheral module in the command determination controller 31. Based on the information, if the operation target module is a module that does not support the new bus command, the access unit information B / W of the old bus command BC2 and the old bus command enable signal BC2_EN are output to the RMW module 32.
  • the RMW module 32 receives an address (ADR) and data (DATA) from the CPUs 101 and 102, an old bus command enable signal BC2_EN and access unit information B / W from the command determination controller 31, and an old bus command BC2 and an old bus command selection signal.
  • BC2_SEL is output and RMW operation is performed.
  • the RMW module 32 includes a BC2 output control unit B_CNT and three data holding registers Reg_A, Reg_BC, and Reg_D.
  • the BC2 output control unit B_CNT receives the old bus command enable signal BC2_EN and the access unit information B / W from the command determination controller 31, receives the old bus command BC2 to the bus command selector 33, and the old bus command selection signal BC2_SEL to the bus command selector 33.
  • the three data holding registers Reg_A, Reg_BC, and Reg_D are for preventing a change in bus command / address and data change by data (DATA) from the CPUs 101 and 102 during the RMW operation. That is, the address holding register Reg_A is for holding the address (ADR) received from the CPUs 101 and 102 during the RMW operation.
  • the register group Reg_BC is used to hold the old bus command enable signal BC2_EN and the access unit information B / W. That is, the old bus command enable signal BC2_EN and the access unit information B / W received from the command determination controller 31 can be held during the RMW operation.
  • the data holding register Reg_D is used during the RMW operation.
  • FIG. 4 shows a configuration example of the command determination controller 31 in FIG.
  • the command determination controller 31 receives the new bus command BC1 and the address (ADR) from the CPUs 101 and 102, and outputs the new bus command BC1 as it is. Based on the information of I_Reg, the access unit information B / W and the old It is determined whether to output the bus command enable signal BC2_EN.
  • the new bus command BC1 is divided into a path that passes through the command determination controller 31 and a path that is input to the BC2 control unit BC2_CTL.
  • the address (ADR) is input to the decoder DEC, and the output signal ADR_DEC of the decoder DEC is input to the register group I_Reg (R_M1, R_M2, R_M3, R_M4 in the drawing).
  • the decoder DEC recognizes which connection module is accessed from, for example, certain 2-bit information of the address (ADR), and outputs the information to the register group I_Reg.
  • the connection module has new bus command support / non-support information.
  • FIG. 5 shows a configuration example of the functional module M1 corresponding to the new bus command BC1.
  • the functional module M1 includes a function setting register 52 for the functional module and a bit operation controller 51 for performing bit operations on the register 52.
  • the functional module M1 is provided with a bit operation controller (not shown) corresponding to the old bus command in order to support the old bus command BC2.
  • the internal bit manipulation controller 51 receives the new bus command BC1 from the bus state controller 105 and performs an operation of manipulating only one bit.
  • FIG. 5 shows an example in which the second bit of the 32-bit register is operated as an example.
  • the functional module M1 receives the new bus command BC1 from the bus state controller 105, and operates 1 bit and 2nd bit (bits indicated by hatching) in the 32-bit register. By this operation, 1 bit in the 32-bit register is rewritten.
  • FIG. 6 shows a flowchart of the above bit operation.
  • a new bus command BC1 is input to the bus state controller 105 (S1: Bus Command BC1 Input).
  • the bus state controller 105 determines whether or not the new bus command is supported (S2: Command Select).
  • S2 Command Select
  • the new bus command BC1 is output (S3: Bus). If the command does not correspond to the new bus command BC1 (Read Modify Write), the new bus command BC1 is converted to the old bus command BC2.
  • the register When converting the new bus command BC1 to the old bus command BC2, the register is read in units of access unit information B / W (S6: Register Read B / W), and 1 bit is changed (S7: 1 Bit Modify).
  • the access unit information B / W unit is written in the register (S8: Register Write B / W), and the process proceeds to the bit operation end determination (S5: Bit Operation Select).
  • bit operation end determination if the bit operation is not ended, the new bus command BC1 is returned to the processing (S1) input to the bus state controller 105. If the bit operation is ended, the processing according to this flowchart is performed. Ended (End).
  • FIG. 7 shows a bit operation example of the new bus command BC1 compatible module and the non-compatible module.
  • a bus state controller (BSC) 105 is interposed, and the bus state controller (BSC) 105 performs 1-bit rewriting by RMW.
  • bus state controller 105 When the bus state controller 105 receives a new bus command from the CPU and determines whether to output a new bus command or convert a new bus command into an old bus command, The bus state controller 105 performs an operation of executing the RMW executed by the CPU. Thus, the CPUs 101 and 102 only need to output a new bus command for a 1-bit write operation. Even if the bus state controller 105 outputs an old bus command and an RMW operation occurs, it does not wait for the completion of the RMW operation. Other instructions can be executed.
  • the present invention can be applied to a microcontroller, a signal processor, an image processor, an audio processor, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

It is possible to execute a bit operation without lowering the bus performance. An information processing device (10) includes CPUs (101, 102) which can fetch and execute a command and peripheral modules (M1, M2, M3) each having a built-in register which can be rewritten by the CPUs and connected to the CPUs by a bus.  The CPUs have a function to issue a bus command for instructing a write operation in the bit unit into the registers contained in the peripheral modules so as to execute the bit operation command fetched by the CPUs.  When the bus command is issued, the peripheral modules execute the write operation in the bit unit into the registers.  Thus, after the bus command is issued, the CPUs need not lock the bus.  That is, it is possible to execute the bit operation without lowering the bus performance.

Description

情報処理装置Information processing device
 本発明は、情報処理装置、特にCPU(中央処理装置)に結合された周辺モジュールに含まれるレジスタのビット操作に関する。 The present invention relates to a bit operation of a register included in a peripheral module coupled to an information processing apparatus, particularly a CPU (central processing unit).
 情報処理装置は、マイクロプロセッサ、マイクロコントローラ、信号処理プロセッサ、画像処理プロセッサ、及び音声処理プロセッサを含む。情報処理装置の一例とされるマイクロプロセッサは、半導体チップ内部でのデータ処理の一つであるビット操作処理を高速に行うために、CPUからチップ内の各周辺モジュールへのデータアクセス時間を短縮する必要がある。このようなアクセス時間の短縮には、マイクロプロセッサの動作周波数向上やチップ内の各周辺モジュールが接続されているバスの高速化、ビット操作用の新命令の追加といったことが広く行われている。 The information processing apparatus includes a microprocessor, a microcontroller, a signal processor, an image processor, and a sound processor. A microprocessor, which is an example of an information processing device, shortens data access time from a CPU to each peripheral module in a chip in order to perform bit manipulation processing, which is one of data processing inside a semiconductor chip, at high speed. There is a need. In order to shorten the access time, it is widely performed to improve the operating frequency of the microprocessor, increase the speed of the bus to which each peripheral module in the chip is connected, and add a new instruction for bit manipulation.
 しかしながら、マイクロプロセッサは従来から周辺レジスタやメモリ等に対して、ある単位(8ビット/16ビット/32ビット)でのデータ処理する構成となっており、1ビットだけ操作するビット操作を直接周辺モジュールに指示することができない。このため、ビット操作を行う時は、一度ある単位(8ビット/16ビット/32ビット)でデータを周辺レジスタやメモリ等からCPU内に読み込み、読み込んだデータ中の1ビットだけデータを変更し、再び周辺モジュールへ書き戻す、リードモディファイライト(以下「RMW」と略記する)の動作が必要となる。 However, a microprocessor has conventionally been configured to process data in a certain unit (8 bits / 16 bits / 32 bits) with respect to peripheral registers, memories, etc., and a bit operation for operating only one bit is directly performed by a peripheral module. I can't tell you. For this reason, when performing bit operations, data is once read into the CPU from a peripheral register or memory in a certain unit (8 bits / 16 bits / 32 bits), and only one bit in the read data is changed, A read-modify-write (hereinafter abbreviated as “RMW”) operation for writing back to the peripheral module again is required.
 ところが、このRMWの動作中は、CPUがバスをロック(ビット操作処理以外を受け付けない状態に固定すること)させ、CPU自体もRMW中は、他の命令を実行することができない。このため、ビット操作処理を短縮し、CPUが他命令を実行できるようにRMW動作が不要なビット操作方式が必要となる。 However, during this RMW operation, the CPU locks the bus (fixes the bus to a state that does not accept other than bit manipulation processing), and the CPU itself cannot execute other instructions during RMW. For this reason, a bit manipulation method that shortens the bit manipulation processing and does not require an RMW operation is required so that the CPU can execute other instructions.
 このようなRMW動作不要なビット操作方式として、特許文献1のような方式が挙げられる。特許文献1では、ビット操作を高速化させるために、ビット操作する1ビット毎に32ビットアドレスに割り当てる為に、メモリアドレス領域を追加して、追加したメモリアドレス領域へ通常命令(ライト命令)でデータを書き込むと、所望のビット操作が実行できる技術が開示されている。追加メモリアドレス領域へある単位(8ビット/16ビット/32ビット)でデータを書き込むことで、モディファイ用にデータをCPUに読み込む必要を無くし、すなわち、CPUでのRMW動作が不要となり、ビット操作を高速化することができる。また、追加メモリアドレス領域へは通常命令でアクセスするため、ビット操作用の新規命令追加の必要も無い。 As such a bit operation method that does not require an RMW operation, a method as described in Patent Document 1 can be cited. In Patent Document 1, in order to increase the bit operation speed, a memory address area is added in order to allocate a 32-bit address for each bit to be operated, and a normal instruction (write instruction) is added to the added memory address area. A technique is disclosed in which a desired bit operation can be performed when data is written. By writing data to the additional memory address area in a certain unit (8 bits / 16 bits / 32 bits), there is no need to read the data into the CPU for modification, that is, no RMW operation is required in the CPU, and bit manipulation is performed. The speed can be increased. Further, since the additional memory address area is accessed with a normal instruction, there is no need to add a new instruction for bit manipulation.
米国特許出願公開第2005/0177691号明細書US Patent Application Publication No. 2005/0177791
 上記のように特許文献1では、ビット操作のために、あるビット幅(8ビット/16ビット/32ビット)を持つメモリアドレス領域を追加して、メモリアドレス領域に通常命令(8ビット/16ビット/32ビット単位でのライト命令)でデータを書き込むと、LSU(ロードストアユニット)がライト動作をRMW動作に変換し、ビット操作を行う方式が開示されている。それによれば、ビット操作をLSUが行うため、CPUは追加したメモリアドレス領域にデータを書き込むだけ良く、CPUのビット操作処理の実行時間を短縮している。 As described above, in Patent Document 1, a memory address area having a certain bit width (8 bits / 16 bits / 32 bits) is added for bit manipulation, and a normal instruction (8 bits / 16 bits) is added to the memory address area. A method is disclosed in which, when data is written in units of / 32-bit units), a LSU (load store unit) converts a write operation into an RMW operation and performs a bit operation. According to this, since the bit operation is performed by the LSU, the CPU only has to write data in the added memory address area, and the execution time of the bit operation processing of the CPU is shortened.
 ところが、この方式では、ビット操作を実行するのがCPUからLSUに移り、LSUがRMW動作を行う為、周辺モジュールにとってのビット操作自体の処理時間は短縮されない。また、複数コアを搭載するCPU等では、RMW動作中に他コアからの命令によるデータの書き換えを防ぐ為に、RMW動作中はバスをロックする必要がある。CPUは通常命令だけでビット操作をさせることができるため、LSUのRMW動作が完了するのを待たずに、他命令を実行することができるが、LSUがRMW動作を実行している間、バスをロックさせる必要があるため、バスの性能が落ちる虞がある。 However, in this method, since the bit operation is performed from the CPU to the LSU and the LSU performs the RMW operation, the processing time of the bit operation itself for the peripheral modules is not shortened. Further, in a CPU or the like equipped with a plurality of cores, it is necessary to lock the bus during the RMW operation in order to prevent rewriting of data due to an instruction from another core during the RMW operation. Since the CPU can perform a bit operation only with a normal instruction, it can execute another instruction without waiting for the completion of the RSU RMW operation. However, while the LSU is executing the RMW operation, Since it is necessary to lock the bus, the performance of the bus may be reduced.
 本発明の目的は、バスの性能を低下させずにビット操作を行うための技術を提供することにある。 An object of the present invention is to provide a technique for performing a bit operation without degrading bus performance.
 本発明の別の目的は、メモリアドレス領域を追加するのでは無く、新バスコマンド(1ビットライト動作コマンド)を追加し、外部アドレス空間に接続された周辺モジュールの制御を行うバスステートコントローラが接続モジュールの新バスコマンド対応/非対応状況を把握し、新バスコマンドと旧バスコマンドとを切り替え、ビット操作を高速化するための技術を提供することにある。 Another object of the present invention is not to add a memory address area but to add a new bus command (1-bit write operation command) and connect a bus state controller for controlling peripheral modules connected to the external address space. The purpose is to provide a technology for speeding up the bit operation by grasping the module bus command support / non-support status, switching between the new bus command and the old bus command.
 本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
 本願において開示される発明のうち代表的なものについて簡単に説明すれば下記のとおりである。 A typical one of the inventions disclosed in the present application will be briefly described as follows.
 すなわち、情報処理装置は、命令をフェッチして実行可能なCPUと、上記CPUによって書き換え可能なレジスタを内蔵し、上記CPUとはバスによって結合された周辺モジュールとを含む。上記CPUは、フェッチされたビット操作命令を実行するために、上記周辺モジュールに含まれるレジスタに対するビット単位のライト動作を指示するためのバスコマンドを発行する機能を含む。上記バスコマンドが発行されると、上記周辺モジュールは、レジスタに対するビット単位のライト動作を実行する。これにより上記CPUは、上記バスコマンド発行後に、バスをロックする必要がない。これによって、バスの性能を低下させずにビット操作を行うことができる。 That is, the information processing apparatus includes a CPU that can fetch and execute an instruction, and a peripheral module that includes a register that can be rewritten by the CPU and is coupled to the CPU by a bus. The CPU includes a function of issuing a bus command for instructing a bit-unit write operation to a register included in the peripheral module in order to execute the fetched bit manipulation instruction. When the bus command is issued, the peripheral module performs a bit-by-bit write operation on the register. This eliminates the need for the CPU to lock the bus after issuing the bus command. This allows bit operations to be performed without degrading the bus performance.
 本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。 The following is a brief description of the effects obtained by the representative inventions disclosed in the present application.
 すなわち、本発明によれば、バスの性能を低下させずにビット操作を行うことができる。また、新バスコマンドを追加し、バスステートコントローラが新バスコマンドと旧バスコマンドを切り替えてビット操作を行うことで、新旧バスコマンド対応モジュールが混在しても、ビット操作の高速化が可能となる。 That is, according to the present invention, bit operations can be performed without degrading bus performance. In addition, a new bus command is added, and the bus state controller switches between the new bus command and the old bus command to perform bit operations, so even if modules compatible with the old and new bus commands are mixed, it is possible to speed up bit operations. .
図1は、本発明にかかる情報処理装置の一例とされるマイクロコンピュータにおけるバスコマンド切り替え型ビット操作の説明図である。FIG. 1 is an explanatory diagram of a bus command switching type bit operation in a microcomputer as an example of an information processing apparatus according to the present invention. 図2は、上記マイクロコンピュータの構成例ブロック図である。FIG. 2 is a block diagram illustrating a configuration example of the microcomputer. 図3は、上記マイクロコンピュータにおけるバスステートコントローラの構成例ブロック図である。FIG. 3 is a block diagram showing a configuration example of the bus state controller in the microcomputer. 図4は、上記バスステートコントローラにおけるコマンド判定コントローラの構成例ブロック図である。FIG. 4 is a block diagram illustrating a configuration example of the command determination controller in the bus state controller. 図5は、上記マイクロコンピュータにおける新バスコマンドBC1に対応する機能モジュールの構成例ブロック図である。FIG. 5 is a block diagram showing a configuration example of functional modules corresponding to the new bus command BC1 in the microcomputer. 図6は、上記マイクロコンピュータにおけるビット操作のフローチャートである。FIG. 6 is a flowchart of the bit operation in the microcomputer. 図7は、新バスコマンドBC1対応モジュールと非対応モジュールのビット操作例の説明図である。FIG. 7 is an explanatory diagram of a bit operation example of the module corresponding to the new bus command BC1 and the non-corresponding module.
 1.代表的な実施の形態
 先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
1. Representative Embodiment First, an outline of a typical embodiment of the invention disclosed in the present application will be described. The reference numerals of the drawings referred to with parentheses in the outline description of the representative embodiments merely exemplify what are included in the concept of the components to which the reference numerals are attached.
 〔1〕本発明の代表的な実施の形態に係る情報処理装置(10)は、命令をフェッチして実行可能なCPU(101,102)と、上記CPUによって書き換え可能なレジスタを内蔵し、上記CPUとはバスによって結合された周辺モジュール(M1,M2,M3)とを含む。上記CPUは、フェッチされたビット操作命令を実行するために、上記周辺モジュールに含まれるレジスタに対するビット単位のライト動作を指示するためのバスコマンドを発行する機能を含む。 [1] An information processing apparatus (10) according to a typical embodiment of the present invention includes a CPU (101, 102) that can fetch and execute an instruction and a register that can be rewritten by the CPU. The CPU includes peripheral modules (M1, M2, M3) coupled by a bus. The CPU includes a function of issuing a bus command for instructing a bit-unit write operation to a register included in the peripheral module in order to execute the fetched bit manipulation instruction.
 上記CPUは、上記バスコマンドが発行されると、上記周辺モジュールでは、レジスタに対するビット単位のライト動作を実行する。このため、上記バスコマンドが発行された後は、バスをロックする必要がないので、バスの性能を低下させずにビット操作を行うことができる。 When the bus command is issued, the CPU executes a bit unit write operation on the register in the peripheral module. For this reason, after the bus command is issued, it is not necessary to lock the bus, so that bit operations can be performed without degrading the performance of the bus.
 〔2〕上記〔1〕において、上記周辺モジュールは、上記CPUから発行された上記バスコマンドに呼応して、上記レジスタに対するビット単位のライト動作を実行するビット操作コントローラを含む。 [2] In the above [1], the peripheral module includes a bit operation controller that executes a write operation in bit units for the register in response to the bus command issued from the CPU.
 〔3〕上記情報処理装置(10)は、フェッチした命令を実行する際に、ビット単位のライト動作を指示するためのバスコマンドを発行可能なCPU(101,102)と、上記CPUとはバスによって結合された周辺モジュール(M1,M2,M3)とを含む。上記周辺モジュールは、上記CPUによって書き換え可能なレジスタ(52)と、上記バスコマンドに呼応して、上記レジスタに対するビット単位のライト動作を実行するビット操作コントローラ(51)とを含んで成る。 [3] The information processing apparatus (10) includes a CPU (101, 102) capable of issuing a bus command for instructing a write operation in bit units when executing a fetched instruction, and the CPU is a bus And peripheral modules (M1, M2, M3) coupled together. The peripheral module includes a register (52) that can be rewritten by the CPU and a bit operation controller (51) that executes a write operation in bit units for the register in response to the bus command.
 〔4〕上記〔3〕において、上記CPUから発行されたバスコマンドは、上記バスを介して上記ビット操作コントローラに伝達されるように構成することができる。 [4] In [3], the bus command issued from the CPU may be transmitted to the bit manipulation controller via the bus.
 〔5〕上記〔3〕において、上記CPUから発行されたバスコマンドは、専用線を介して上記ビット操作コントローラに伝達されるように構成することができる。専用線を用いる場合には、バスを用いる場合よりも、バスコマンドを高速に伝達することができる。 [5] In the above [3], the bus command issued from the CPU can be transmitted to the bit operation controller via a dedicated line. When a dedicated line is used, a bus command can be transmitted at a higher speed than when a bus is used.
 〔6〕上記情報処理装置(10)は、フェッチした命令を実行する際に、ビット単位のライト動作を指示するためのバスコマンドを発行可能なCPU(101,102)と、上記CPUとはバスによって結合された周辺モジュール(M1,M2,M3)と、上記バスに結合され、バスステート制御を行うバスステートコントローラ(105)とを含む。上記バスステートコントローラは、上記周辺モジュールが上記バスコマンドをサポートするか否かの識別を可能とする第1回路(31)と、上記CPUからの第1バスコマンドを上記周辺モジュールがサポートする形式の第2バスコマンドに変換可能な第2回路(32)と、上記第1回路での識別結果に基づいて、上記CPUから伝達された第1バスコマンドと、第2回路から出力された第2バスコマンドとを選択的に上記周辺モジュールに出力可能な第3回路(33)と、を含んで成る。 [6] The information processing apparatus (10) includes a CPU (101, 102) capable of issuing a bus command for instructing a write operation in bit units when executing a fetched instruction, and the CPU is a bus The peripheral modules (M1, M2, M3) coupled by the above-mentioned bus and the bus state controller (105) coupled to the bus and performing the bus state control. The bus state controller has a first circuit (31) that makes it possible to identify whether or not the peripheral module supports the bus command, and a format in which the peripheral module supports the first bus command from the CPU. A second circuit (32) that can be converted into a second bus command, a first bus command transmitted from the CPU based on an identification result in the first circuit, and a second bus output from the second circuit And a third circuit (33) capable of selectively outputting a command to the peripheral module.
 上記バスステートコントローラが上記CPUからの第1バスコマンドを受けて、第1バスコマンドを出力するか、第1バスコマンドを第2バスコマンドに変換するかを判定する。これにより、上記CPUは1ビットライト動作の第1バスコマンドを出力するだけで良く、仮にバスステートコントローラが第2バスコマンドを出力しRMW動作が発生しても、そのRMW動作の完了を待つことなく、他命令を実行することができるので、バスの性能を低下させずにビット操作を行うことができる。 The bus state controller receives the first bus command from the CPU, and determines whether to output the first bus command or convert the first bus command into the second bus command. As a result, the CPU only needs to output the first bus command of the 1-bit write operation. Even if the bus state controller outputs the second bus command and the RMW operation occurs, the CPU waits for the completion of the RMW operation. Since other instructions can be executed, bit operations can be performed without degrading the performance of the bus.
 〔7〕上記〔6〕において、上記第2回路は、第2回路で変換されたバスコマンドが上記第3回路を介して出力される場合には、上記周辺モジュールからデータを読み込み、読み込んだデータの一部を変更してから再び上記周辺モジュールへ書き戻すRMWを行う。 [7] In the above [6], when the bus command converted by the second circuit is output via the third circuit, the second circuit reads data from the peripheral module and reads the read data Then, RMW is performed to write back to the peripheral module again.
 2.実施の形態の説明
 次に、実施の形態について更に詳述する。
2. Next, the embodiment will be described in more detail.
 図2には、本発明にかかる情報処理装置の一例とされるマイクロコンピュータが示される。図2に示されるマイクロコンピュータ10は、複数のCPU101,102、バスステートコントローラ(BSC)105、複数の周辺モジュール(Module)M1,M2,M3を含み、公知の半導体集積回路製造方法により単結晶シリコン基板などの一つの半導体基板に形成される。CPU101,102は第1バス103に結合され、周辺モジュールM1,M2,M3は第2バス104に結合される。上記第1バス103と上記第2バス104とはバスステートコントローラ105を介して結合される。マイクロコンピュータ10の外部には、外部メモリ20が配置される。この外部メモリ20には周辺モジュールM4が内蔵されている。上記CPU101,102は、それぞれプログラムメモリ(図示せず)から命令をフェッチし、それを実行する。上記周辺モジュールM1,M2,M3,M4は、それぞれ所定の機能を有する。 FIG. 2 shows a microcomputer as an example of an information processing apparatus according to the present invention. A microcomputer 10 shown in FIG. 2 includes a plurality of CPUs 101 and 102, a bus state controller (BSC) 105, and a plurality of peripheral modules (Modules) M1, M2, and M3. Single-crystal silicon is manufactured by a known semiconductor integrated circuit manufacturing method. It is formed on one semiconductor substrate such as a substrate. The CPUs 101 and 102 are coupled to the first bus 103, and the peripheral modules M1, M2, and M3 are coupled to the second bus 104. The first bus 103 and the second bus 104 are coupled via a bus state controller 105. An external memory 20 is disposed outside the microcomputer 10. The external memory 20 includes a peripheral module M4. Each of the CPUs 101 and 102 fetches an instruction from a program memory (not shown) and executes it. Each of the peripheral modules M1, M2, M3, and M4 has a predetermined function.
 次に、上記構成のマイクロコンピュータ10におけるバスコマンド切り替え型ビット操作について説明する。 Next, the bus command switching type bit operation in the microcomputer 10 having the above configuration will be described.
 図1は、図2に示されるマイクロコンピュータ10におけるバスコマンド切り替え型ビット操作を模式的に示している。 FIG. 1 schematically shows a bus command switching type bit operation in the microcomputer 10 shown in FIG.
 上記構成のマイクロコンピュータ10におけるバスコマンド切り替え型ビット操作は、CPU101,102が新バスコマンドBC1(第1バスコマンド)をバスステートコントローラ105に出力し、バスステートコントローラ105が周辺モジュール毎に新バスコマンド対応/非対応を判断し新バスコマンドと旧バスコマンド(第2バスコマンド)を切り替えてビット操作するものである。この操作方式により、バスに接続される周辺モジュールに、新バスコマンド対応モジュールと新バスコマンド非対応モジュールが混在しても、ビット操作を実行することができる。説明の便宜上、周辺モジュールM1,M2は、新バスコマンドBC1と旧バスコマンドBC2との双方に対応し、周辺モジュールM3,M4は旧バスコマンドBC2にのみ対応するものとする。新バスコマンド(BC1)対応モジュールM1,M2に対しては、以下に述べるようにビット操作の高速化ができ、新バスコマンド非対応モジュールに対しては、バスステートコントローラ105が、新バスコマンドBC1を旧バスコマンドBC2に変換し、従来CPUが行っていたRMW動作を実行する。すなわち、CPU101,102は、新バスコマンドBC1をバスステートコントローラ105に対して発行するだけでビット操作を実行することができ、新バスコマンドBC1出力後すぐに他命令を実行することが可能となる。また、新バスコマンド対応モジュールM1,M2は、RMW動作ではなく、1ビットライト動作ができるので、ビット操作自体の高速化が実現できる。 In the bus command switching type bit operation in the microcomputer 10 having the above configuration, the CPUs 101 and 102 output the new bus command BC1 (first bus command) to the bus state controller 105, and the bus state controller 105 outputs a new bus command for each peripheral module. The bit operation is performed by determining the correspondence / non-correspondence and switching between the new bus command and the old bus command (second bus command). According to this operation method, even if a peripheral module connected to the bus includes a new bus command compatible module and a new bus command non-compatible module, the bit operation can be executed. For convenience of explanation, it is assumed that the peripheral modules M1 and M2 correspond to both the new bus command BC1 and the old bus command BC2, and the peripheral modules M3 and M4 correspond only to the old bus command BC2. For the new bus command (BC1) compatible modules M1 and M2, the bit operation can be speeded up as described below, and for the new bus command non-compatible module, the bus state controller 105 receives the new bus command BC1. Is converted into the old bus command BC2, and the RMW operation conventionally performed by the CPU is executed. That is, the CPUs 101 and 102 can execute a bit operation only by issuing a new bus command BC1 to the bus state controller 105, and can execute other instructions immediately after the new bus command BC1 is output. . Further, since the new bus command corresponding modules M1 and M2 can perform a 1-bit write operation instead of an RMW operation, the bit operation itself can be speeded up.
 ここで、上記バスコマンドは、CPU101,102がフェッチした命令を実行するために、CPU内の命令解釈モジュール(デコーダ)が、周辺モジュールに対して発行する、あるビット単位(例えば8ビットや10ビット等)の命令である。例えば、CPU101あるいは102は、ビット操作命令が格納されているプログラムメモリ(図示せず)から命令を読み取り、当該CPU内のデコーダで命令を解釈する。このデコーダは、命令解釈後、ビット操作命令を実行する為に必要な周辺モジュールの動作を、周辺モジュールに指示する命令である、リードやライト等のバスコマンドを出力する。バスコマンドは、CPU101又は102から専用線、あるいは、バス103及び104を介して周辺モジュールに入力される。専用線を用いる場合には、バス103や104を用いる場合よりも高速にバスコマンドを伝達することができる。 Here, the bus command is a bit unit (for example, 8 bits or 10 bits) issued to the peripheral module by the instruction interpretation module (decoder) in the CPU in order to execute the instruction fetched by the CPUs 101 and 102. Etc.). For example, the CPU 101 or 102 reads an instruction from a program memory (not shown) in which a bit operation instruction is stored, and interprets the instruction with a decoder in the CPU. This decoder outputs a bus command such as read or write, which is an instruction for instructing the peripheral module to perform the operation of the peripheral module necessary for executing the bit manipulation instruction after interpreting the instruction. The bus command is input from the CPU 101 or 102 to the peripheral module via the dedicated line or the buses 103 and 104. When a dedicated line is used, a bus command can be transmitted faster than when the buses 103 and 104 are used.
 本提案の新バスコマンドBC1(第1バスコマンド)は旧バスコマンドBC2(第2バスコマンド)の拡張である。旧バスコマンドBC2には、前述の通り、リードやライト等がある。ところが、旧バスコマンドBC2は、バイトやワード単位でのリードやライト等を指示するコマンドであり、1ビット単位のライトを指示するコマンドでは無い。これに対して、新バスコマンドBC1は1ビット単位のライト動作を指示するコマンドである。 The proposed new bus command BC1 (first bus command) is an extension of the old bus command BC2 (second bus command). The old bus command BC2 includes read and write as described above. However, the old bus command BC2 is a command for instructing reading or writing in units of bytes or words, and is not a command for instructing writing in units of 1 bit. On the other hand, the new bus command BC1 is a command for instructing a write operation in 1-bit units.
 ビット操作対象のビット位置と、ビット操作情報を埋め込む方法は2通りある。1つ目は、データの空き領域に埋め込む方法である。この方法では、データへのアクセス単位はバイト、ワード単位であり、ライト単位は1ビット単位である。例えば、新バスコマンドは、データにバイト単位でアクセスし、バイトデータ中の、ある1ビットのみ操作する動作をさせるコマンドである。この時のビット操作のビット位置と、ビット操作情報はデータの上位空きビットに埋め込んでおく。 There are two ways to embed bit manipulation information and bit manipulation information. The first is a method of embedding in an empty area of data. In this method, the data access unit is a byte or word unit, and the write unit is a 1-bit unit. For example, a new bus command is a command for accessing data in units of bytes and operating only one bit in the byte data. The bit position of the bit operation and the bit operation information at this time are embedded in the upper free bits of the data.
 2つ目は、バスコマンドにビット位置情報と、ビット操作情報を追加する方法である。1つ目の方法は、ビット位置情報とビット操作情報をデータの上位空きビットに埋め込むため、データアクセス単位は、バイト単位かワード単位に縛られる。ところが、2つ目の方法は、バスコマンドに操作ビット位置情報と、ビット操作情報を追加するので、データアクセス単位は、バイト、ワード以外にも設定可能である。 The second method is to add bit position information and bit operation information to the bus command. The first method embeds bit position information and bit operation information in the upper free bits of data, so the data access unit is limited to byte units or word units. However, since the second method adds operation bit position information and bit operation information to the bus command, the data access unit can be set to other than bytes and words.
 本実施形態におけるバスコマンド切り替え型ビット操作では、ビット操作高速化の実現のために、バスステートコントローラ105がCPUから受けた新バスコマンドBC1をそのまま出力し、1ビットライト動作を実行する、若しくは、新バスコマンドBC1を旧バスコマンドBC2に変換して出力し、RMW動作を実行する。ここで、バスステートコントローラ105の構成、及び動作について図3を用いて説明する。 In the bus command switching type bit operation in the present embodiment, the bus state controller 105 outputs the new bus command BC1 received from the CPU as it is and executes a 1-bit write operation in order to realize a high bit operation speed, or The new bus command BC1 is converted into the old bus command BC2 and output, and the RMW operation is executed. Here, the configuration and operation of the bus state controller 105 will be described with reference to FIG.
 図3には、上記バスステートコントローラ105の構成例が示される。 FIG. 3 shows a configuration example of the bus state controller 105.
 図3に示されるように、上記バスステートコントローラ105は、内部に次の4つの周辺モジュールを持つ。すなわち、コマンド判定コントローラ(CJC)31、RMWモジュール(RMW_Mod)32、バスコマンドセレクタ(BC_SEL)33、及びデータセレクタ(D_SEL)34、である。 As shown in FIG. 3, the bus state controller 105 has the following four peripheral modules. That is, a command determination controller (CJC) 31, an RMW module (RMW_Mod) 32, a bus command selector (BC_SEL) 33, and a data selector (D_SEL) 34.
 コマンド判定コントローラ31は、CPU101,102から受けた新バスコマンドを、バスに接続された、新バスコマンド対応モジュールと新バスコマンド非対応モジュール毎に、新バスコマンド対応/非対応を判定し、新バスコマンドをそのまま出力するか、新バスコマンドを旧バスコマンドに変換して出力するかを判定する機能を有する。 The command determination controller 31 determines whether the new bus command received from the CPUs 101 and 102 is new bus command supported / not supported for each new bus command supported module and new bus command not supported module connected to the bus. It has a function of determining whether to output a bus command as it is or to convert a new bus command into an old bus command and output it.
 RMWモジュール32は、コマンド判定コントローラ31が旧バスコマンドを出力する判定をした時に、旧バスコマンドBC2の出力と、RMW動作を実行する。 The RMW module 32 executes the output of the old bus command BC2 and the RMW operation when the command determination controller 31 determines to output the old bus command.
 バスコマンドセレクタ33は、コマンド判定コントローラ31から出力された新バスコマンドBC1と、RMWモジュール32から出力された旧バスコマンドBC2を、RMWモジュール32から出力されたBC2_SEL(旧バスコマンド選択信号)の信号で選択する。 The bus command selector 33 uses the new bus command BC1 output from the command determination controller 31 and the old bus command BC2 output from the RMW module 32 as a BC2_SEL (old bus command selection signal) signal output from the RMW module 32. Select with.
 データセレクタ34は、CPU101,102からのデータ(DATA)をそのまま出力するか、RMWモジュール32からのDATA_RMWを出力するかをRMWモジュール32から出力されたBC2_SELで選択する。 The data selector 34 selects whether to output the data (DATA) from the CPUs 101 and 102 as it is or to output the DATA_RMW from the RMW module 32 using BC2_SEL output from the RMW module 32.
 コマンド判定コントローラ31は、CPU101,102から新バスコマンドBC1とアドレスADRを受け、BC1はそのまま出力し、コマンド判定コントローラ31内部の周辺モジュール毎の新バスコマンド対応/非対応情報を持つレジスタ群I_Regの情報を基に、操作対象モジュールが新バスコマンド非対応モジュールの場合は旧バスコマンドBC2のアクセス単位情報B/Wと旧バスコマンドイネーブル信号BC2_ENとをRMWモジュール32に出力する。 The command determination controller 31 receives the new bus command BC1 and the address ADR from the CPUs 101 and 102, outputs BC1 as it is, and registers the register group I_Reg having new bus command support / non-support information for each peripheral module in the command determination controller 31. Based on the information, if the operation target module is a module that does not support the new bus command, the access unit information B / W of the old bus command BC2 and the old bus command enable signal BC2_EN are output to the RMW module 32.
 RMWモジュール32は、CPU101,102からアドレス(ADR)とデータ(DATA)、コマンド判定コントローラ31から旧バスコマンドイネーブル信号BC2_ENとアクセス単位情報B/Wを受け、旧バスコマンドBC2と旧バスコマンド選択信号BC2_SELを出力し、RMW動作を行う。特に制限されないが、このRMWモジュール32は、BC2出力制御部B_CNTと、3つのデータ保持用レジスタReg_A,Reg_BC,Reg_Dを持つ。BC2出力制御部B_CNTは、コマンド判定コントローラ31から旧バスコマンドイネーブル信号BC2_ENとアクセス単位情報B/Wを受け、旧バスコマンドBC2をバスコマンドセレクタ33に、旧バスコマンド選択信号BC2_SELをバスコマンドセレクタ33とデータセレクタ34に出力するためのものである。3つのデータ保持用レジスタReg_A,Reg_BC,Reg_Dは、RMW動作中の、バスコマンド/アドレスの変更、及びCPU101,102からのデータ(DATA)によるデータ変更を防止するためのものである。すなわち、アドレス保持用のレジスタReg_Aは、CPU101,102から受けたアドレス(ADR)をRMW動作中保持しておくためのものである。レジスタ群Reg_BCは、旧バスコマンドイネーブル信号BC2_ENやアクセス単位情報B/Wを保持するのに使用される。すなわち、コマンド判定コントローラ31から受けた旧バスコマンドイネーブル信号BC2_ENとアクセス単位情報B/WをRMW動作中保持しておくことができる。データ保持用のレジスタReg_Dは、RMW動作時に使用される。これは、CPUから受けたDATAを接続モジュールに書き込む時に、一度ある単位(8ビット/16ビット/32ビット)でデータを読み込み、変更を加える時に使用するためと、RMW動作中にCPU101,102からの新たなデータ(DATA)入力を防止するためのものである。 The RMW module 32 receives an address (ADR) and data (DATA) from the CPUs 101 and 102, an old bus command enable signal BC2_EN and access unit information B / W from the command determination controller 31, and an old bus command BC2 and an old bus command selection signal. BC2_SEL is output and RMW operation is performed. Although not particularly limited, the RMW module 32 includes a BC2 output control unit B_CNT and three data holding registers Reg_A, Reg_BC, and Reg_D. The BC2 output control unit B_CNT receives the old bus command enable signal BC2_EN and the access unit information B / W from the command determination controller 31, receives the old bus command BC2 to the bus command selector 33, and the old bus command selection signal BC2_SEL to the bus command selector 33. Output to the data selector 34. The three data holding registers Reg_A, Reg_BC, and Reg_D are for preventing a change in bus command / address and data change by data (DATA) from the CPUs 101 and 102 during the RMW operation. That is, the address holding register Reg_A is for holding the address (ADR) received from the CPUs 101 and 102 during the RMW operation. The register group Reg_BC is used to hold the old bus command enable signal BC2_EN and the access unit information B / W. That is, the old bus command enable signal BC2_EN and the access unit information B / W received from the command determination controller 31 can be held during the RMW operation. The data holding register Reg_D is used during the RMW operation. This is because when data received from the CPU is written to the connection module, the data is read once in a certain unit (8 bits / 16 bits / 32 bits) and used when a change is made, and from the CPUs 101 and 102 during the RMW operation. This is to prevent new data (DATA) from being input.
 図4には、図3におけるコマンド判定コントローラ31の構成例が示される。先述のとおり、コマンド判定コントローラ31はCPU101,102から新バスコマンドBC1とアドレス(ADR)を受け、新バスコマンドBC1はそのまま出力し、I_Regの情報を基に、アクセス単位情報B/W、及び旧バスコマンドイネーブル信号BC2_ENを出力するかを判定する。新バスコマンドBC1はコマンド判定コントローラ31を素通りするパスとBC2制御部BC2_CTLに入力されるパスとに分かれる。アドレス(ADR)はデコーダDECに入力され、デコーダDECの出力信号ADR_DECがレジスタ群I_Reg(図中のR_M1,R_M2,R_M3,R_M4)に入力される。デコーダDECはアドレス(ADR)の例えばある2ビットの情報から、どの接続モジュールにアクセスするかを認識し、その情報をレジスタ群I_Regに出力する。このレジスタ群I_Regは、接続モジュールが新バスコマンド対応/非対応情報を持つ。 FIG. 4 shows a configuration example of the command determination controller 31 in FIG. As described above, the command determination controller 31 receives the new bus command BC1 and the address (ADR) from the CPUs 101 and 102, and outputs the new bus command BC1 as it is. Based on the information of I_Reg, the access unit information B / W and the old It is determined whether to output the bus command enable signal BC2_EN. The new bus command BC1 is divided into a path that passes through the command determination controller 31 and a path that is input to the BC2 control unit BC2_CTL. The address (ADR) is input to the decoder DEC, and the output signal ADR_DEC of the decoder DEC is input to the register group I_Reg (R_M1, R_M2, R_M3, R_M4 in the drawing). The decoder DEC recognizes which connection module is accessed from, for example, certain 2-bit information of the address (ADR), and outputs the information to the register group I_Reg. In this register group I_Reg, the connection module has new bus command support / non-support information.
 ここで、例えば周辺モジュールM3が新バスコマンドに非対応の場合(図中R_M3:0(1が新バスコマンド対応、0が新バスコマンド非対応を意味する))について説明する。 Here, for example, a case where the peripheral module M3 does not support the new bus command (R_M3: 0 in the figure (1 means new bus command supported, 0 means new bus command not supported)) will be described.
 アドレスADRで周辺モジュールM3が選択され、デコーダDECの出力信号ADR_DECがレジスタ群I_Regに入力されると、新バスコマンド対応/非対応の判定が行われる。レジスタR_M3には、新バスコマンド非対応(0のデータが保持されている)の情報が書かれているので、BC2_CTL_EN(旧バスコマンド制御部イネーブル信号)がイネーブル状態にされる。BC2制御部BC2_CTLは、BC2_CTL_ENがイネーブル状態にされているので、旧バスコマンドイネーブル信号BC2_ENとアクセス単位情報B/Wを出力する。 When the peripheral module M3 is selected by the address ADR and the output signal ADR_DEC of the decoder DEC is input to the register group I_Reg, it is determined whether or not the new bus command is supported. In the register R_M3, information indicating that the new bus command is not supported (data of 0 is held) is written, so that BC2_CTL_EN (old bus command control unit enable signal) is enabled. The BC2 control unit BC2_CTL outputs the old bus command enable signal BC2_EN and the access unit information B / W since BC2_CTL_EN is enabled.
 図5には、新バスコマンドBC1に対応する機能モジュールM1の構成例が示される。 FIG. 5 shows a configuration example of the functional module M1 corresponding to the new bus command BC1.
 図5に示されるように、機能モジュールM1は、機能モジュールの機能設定用のレジスタ52と、このレジスタ52のビット操作を行うためのビット操作コントローラ51とを含む。尚、特に制限されないが、機能モジュールM1は、旧バスコマンドBC2にも対応するため、旧バスコマンド対応のビット操作コントローラ(図示せず)が設けられている。内部のビット操作コントローラ51が、バスステートコントローラ105からの新バスコマンドBC1を受けて、1ビットだけ操作する動作を行なう。図5では、例として、32ビットレジスタの第2ビットを操作する例を示している。前述の通り、機能モジュールM1は、バスステートコントローラ105から新バスコマンドBC1を受けて、32ビットレジスタ中の1ビット、第2ビット(ハッチングで示されるビット)を操作する。この操作により、32ビットレジスタ中の1ビットの書き換えが行われる。 As shown in FIG. 5, the functional module M1 includes a function setting register 52 for the functional module and a bit operation controller 51 for performing bit operations on the register 52. Although not particularly limited, the functional module M1 is provided with a bit operation controller (not shown) corresponding to the old bus command in order to support the old bus command BC2. The internal bit manipulation controller 51 receives the new bus command BC1 from the bus state controller 105 and performs an operation of manipulating only one bit. FIG. 5 shows an example in which the second bit of the 32-bit register is operated as an example. As described above, the functional module M1 receives the new bus command BC1 from the bus state controller 105, and operates 1 bit and 2nd bit (bits indicated by hatching) in the 32-bit register. By this operation, 1 bit in the 32-bit register is rewritten.
 図6には、上記ビット操作のフローチャートが示される。 FIG. 6 shows a flowchart of the above bit operation.
 まず、新バスコマンドBC1がバスステートコントローラ105に入力される(S1:Bus Command BC1 Input)。バスステートコントローラ105で新バスコマンドに対応するか否かを判定し(S2:Command Select)、新バスコマンドBC1に対応している場合(Write)は、新バスコマンドBC1を出力し(S3:Bus Command BC1 Output)、新バスコマンドBC1に対応していない場合(Read Modify Write)は、新バスコマンドBC1を旧バスコマンドBC2に変換する。 First, a new bus command BC1 is input to the bus state controller 105 (S1: Bus Command BC1 Input). The bus state controller 105 determines whether or not the new bus command is supported (S2: Command Select). When the bus state controller 105 supports the new bus command BC1 (Write), the new bus command BC1 is output (S3: Bus). If the command does not correspond to the new bus command BC1 (Read Modify Write), the new bus command BC1 is converted to the old bus command BC2.
 新バスコマンドBC1を出力する場合、接続モジュールの1ビットを書込み、ビット操作の終了判定に移る。 When outputting the new bus command BC1, write 1 bit of the connection module and move to the end of bit operation determination.
 新バスコマンドBC1を旧バスコマンドBC2に変換する場合、レジスタをアクセス単位情報B/W単位でリードし(S6:Register Read B/W)、その中の1ビットを変更し(S7:1 Bit Modify)、アクセス単位情報B/W単位でレジスタに書き込まれ(S8:Register Write B/W)、ビット操作の終了判定(S5:Bit Operation Select)に移る。 When converting the new bus command BC1 to the old bus command BC2, the register is read in units of access unit information B / W (S6: Register Read B / W), and 1 bit is changed (S7: 1 Bit Modify). The access unit information B / W unit is written in the register (S8: Register Write B / W), and the process proceeds to the bit operation end determination (S5: Bit Operation Select).
 ビット操作の終了判定では、ビット操作を終了しない場合は、新バスコマンドBC1がバスステートコントローラ105に入力される処理(S1)に戻され、ビット操作を終了する場合には、本フローチャートによる処理が終了される(End)。 In the bit operation end determination, if the bit operation is not ended, the new bus command BC1 is returned to the processing (S1) input to the bus state controller 105. If the bit operation is ended, the processing according to this flowchart is performed. Ended (End).
 図7には、新バスコマンドBC1対応モジュールと非対応モジュールのビット操作例が示される。 FIG. 7 shows a bit operation example of the new bus command BC1 compatible module and the non-compatible module.
 新バスコマンドBC1対応モジュールの場合、図7(A)に示されるように、新バスコマンドBC1対応モジュール内で、該当する1ビットのみが書き換えられるのに対して、新バスコマンドBC1非対応モジュールでは、図7(B)に示されるように、バスステートコントローラ(BSC)105が介在され、この、バスステートコントローラ(BSC)105において、RMWによる1ビット書き換えが行われる。 In the case of the module corresponding to the new bus command BC1, as shown in FIG. 7A, only the corresponding 1 bit is rewritten in the module corresponding to the new bus command BC1, whereas in the module not supporting the new bus command BC1 As shown in FIG. 7B, a bus state controller (BSC) 105 is interposed, and the bus state controller (BSC) 105 performs 1-bit rewriting by RMW.
 上記の例によれば、以下の作用効果を得ることができる。 According to the above example, the following effects can be obtained.
 (1)バスステートコントローラ105がCPUからの新バスコマンドを受けて、新バスコマンドを出力するか、新バスコマンドを旧バスコマンドに変換するかを判定し、旧バスコマンドを出力する時には、従来CPUが実行していたRMWをバスステートコントローラ105が実行する動作を行う。これにより、CPU101,102は1ビットライト動作の新バスコマンドを出力するだけで良く、仮にバスステートコントローラ105が旧バスコマンドを出力しRMW動作が発生しても、RMW動作の完了を待つことなく、他命令を実行することができる。 (1) When the bus state controller 105 receives a new bus command from the CPU and determines whether to output a new bus command or convert a new bus command into an old bus command, The bus state controller 105 performs an operation of executing the RMW executed by the CPU. Thus, the CPUs 101 and 102 only need to output a new bus command for a 1-bit write operation. Even if the bus state controller 105 outputs an old bus command and an RMW operation occurs, it does not wait for the completion of the RMW operation. Other instructions can be executed.
 (2)上記(1)の作用効果により、マイクロコンピュータ10での処理の効率向上を図ることができる。 (2) Due to the effect (1), the processing efficiency of the microcomputer 10 can be improved.
 以上本発明者によってなされた発明を具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 Although the invention made by the present inventor has been specifically described above, the present invention is not limited thereto, and it goes without saying that various changes can be made without departing from the scope of the invention.
 以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるマイクロコンピュータに適用した場合について説明したが、本発明はそれに限定されるものではない。 In the above description, the case where the invention made by the present inventor is applied to the microcomputer, which is the field of use behind it, has been described, but the present invention is not limited thereto.
 本発明は、マイクロコントローラ、信号処理プロセッサ、画像処理プロセッサ、及び音声処理プロセッサなどに適用することができる。 The present invention can be applied to a microcontroller, a signal processor, an image processor, an audio processor, and the like.
 10 マイクロコンピュータ
 20 外部メモリ
 31 コマンド判定コントローラ
 32 RMWモジュール
 33 バスコマンドセレクタ
 34 データセレクタ
 51 ビット操作コントローラ
 52 レジスタ
 101,102 CPU
 105 バスステートコントローラ
 103 第1バス
 104 第2バス
 M1,M2,M3,M4 周辺モジュール
DESCRIPTION OF SYMBOLS 10 Microcomputer 20 External memory 31 Command determination controller 32 RMW module 33 Bus command selector 34 Data selector 51 Bit operation controller 52 Register 101,102 CPU
105 Bus state controller 103 1st bus 104 2nd bus M1, M2, M3, M4 Peripheral module

Claims (7)

  1.  命令をフェッチして実行可能なCPUと、
     上記CPUによって書き換え可能なレジスタを内蔵し、上記CPUとはバスによって結合された周辺モジュールと、を含み、
     上記CPUは、フェッチされたビット操作命令を実行するために、上記周辺モジュールに含まれるレジスタに対するビット単位のライト動作を指示するためのバスコマンドを発行する機能を含んで成ることを特徴とする情報処理装置。
    A CPU capable of fetching and executing instructions;
    A register rewritable by the CPU, and a peripheral module coupled to the CPU by a bus;
    The CPU includes a function of issuing a bus command for instructing a bit-unit write operation to a register included in the peripheral module in order to execute the fetched bit manipulation instruction. Processing equipment.
  2.  上記周辺モジュールは、上記CPUから発行された上記バスコマンドに呼応して、上記レジスタに対するビット単位のライト動作を実行するビット操作コントローラを含む請求項1記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the peripheral module includes a bit operation controller that executes a write operation in units of bits with respect to the register in response to the bus command issued from the CPU.
  3.  フェッチした命令を実行する際に、ビット単位のライト動作を指示するためのバスコマンドを発行可能なCPUと、
     上記CPUとはバスによって結合された周辺モジュールと、を含み、
     上記周辺モジュールは、上記CPUによって書き換え可能なレジスタと、
     上記バスコマンドに呼応して、上記レジスタに対するビット単位のライト動作を実行するビット操作コントローラと、を含んで成ることを特徴とする情報処理装置。
    A CPU capable of issuing a bus command for instructing a write operation in units of bits when executing the fetched instruction;
    The CPU includes peripheral modules coupled by a bus,
    The peripheral module includes a register rewritable by the CPU,
    An information processing apparatus comprising: a bit operation controller that executes a write operation in units of bits with respect to the register in response to the bus command.
  4.  上記CPUから発行されたバスコマンドは、上記バスを介して上記ビット操作コントローラに伝達される請求項3記載の情報処理装置。 4. The information processing apparatus according to claim 3, wherein the bus command issued from the CPU is transmitted to the bit operation controller via the bus.
  5.  上記CPUから発行されたバスコマンドは、専用線を介して上記ビット操作コントローラに伝達される請求項3記載の情報処理装置。 4. The information processing apparatus according to claim 3, wherein the bus command issued from the CPU is transmitted to the bit operation controller via a dedicated line.
  6.  フェッチした命令を実行する際に、ビット単位のライト動作を指示するための第1バスコマンドを発行可能なCPUと、
     上記CPUとはバスによって結合された周辺モジュールと、
     上記バスに結合され、バスステート制御を行うバスステートコントローラと、を含み、
     上記バスステートコントローラは、上記周辺モジュールが上記バスコマンドをサポートするか否かの識別を可能とする第1回路と、
     上記CPUからの第1バスコマンドを上記周辺モジュールがサポートする第2バスコマンドに変換可能な第2回路と、
     上記第1回路での識別結果に基づいて、上記CPUから伝達された第1バスコマンドと、第2回路から出力された第2バスコマンドとを選択的に上記周辺モジュールに出力可能な第3回路と、を含んで成ることを特徴とする情報処理装置。
    A CPU capable of issuing a first bus command for instructing a write operation in units of bits when executing a fetched instruction;
    A peripheral module coupled to the CPU by a bus;
    A bus state controller coupled to the bus for performing bus state control,
    The bus state controller includes a first circuit that enables identification of whether the peripheral module supports the bus command;
    A second circuit capable of converting the first bus command from the CPU into a second bus command supported by the peripheral module;
    A third circuit capable of selectively outputting the first bus command transmitted from the CPU and the second bus command output from the second circuit to the peripheral module based on the identification result in the first circuit. An information processing apparatus comprising:
  7.  上記第2回路は、第2回路で変換されたバスコマンドが上記第3回路を介して出力される場合には、上記周辺モジュールからデータを読み込み、読み込んだデータの一部を変更してから再び上記周辺モジュールへ書き戻すリードモディファイライトを行う請求項6記載の情報処理装置。 When the bus command converted by the second circuit is output via the third circuit, the second circuit reads data from the peripheral module, changes a part of the read data, and then again. The information processing apparatus according to claim 6, wherein a read modify write is performed to write back to the peripheral module.
PCT/JP2009/003710 2008-09-10 2009-08-04 Information processing device WO2010029682A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US13/062,508 US20110238883A1 (en) 2008-09-10 2009-08-04 Information processing device
JP2010528600A JPWO2010029682A1 (en) 2008-09-10 2009-08-04 Information processing device
EP09812831A EP2328075A4 (en) 2008-09-10 2009-08-04 Information processing device
CN2009801352429A CN102150132A (en) 2008-09-10 2009-08-04 Information processing device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-232106 2008-09-10
JP2008232106 2008-09-10

Publications (1)

Publication Number Publication Date
WO2010029682A1 true WO2010029682A1 (en) 2010-03-18

Family

ID=42004948

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/003710 WO2010029682A1 (en) 2008-09-10 2009-08-04 Information processing device

Country Status (5)

Country Link
US (1) US20110238883A1 (en)
EP (1) EP2328075A4 (en)
JP (1) JPWO2010029682A1 (en)
CN (1) CN102150132A (en)
WO (1) WO2010029682A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170470A (en) * 2017-12-28 2018-06-15 杭州中天微系统有限公司 SOC system step-by-step write devices
CN112820343A (en) * 2021-02-25 2021-05-18 记忆科技(深圳)有限公司 Data protection method and device, computer equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04241650A (en) * 1991-01-14 1992-08-28 Toshiba Corp One-bit writing processing system
JPH04291641A (en) * 1991-03-20 1992-10-15 Fujitsu Ltd Register device
JPH04353927A (en) * 1991-05-31 1992-12-08 Hitachi Ltd Micro processor
US20050177691A1 (en) 2004-02-09 2005-08-11 Arm Limited Access to bit values within data words stored in a memory

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287503A (en) * 1991-09-27 1994-02-15 Sun Microsystems, Inc. System having control registers coupled to a bus whereby addresses on the bus select a control register and a function to be performed on the control register
DE4208459A1 (en) * 1992-03-17 1993-09-23 Philips Patentverwaltung CIRCUIT ARRANGEMENT FOR PROCESSING INPUT / OUTPUT DATA
US5666515A (en) * 1993-02-18 1997-09-09 Unisys Corporation Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address
JPH08185320A (en) * 1994-12-28 1996-07-16 Mitsubishi Electric Corp Semiconductor integrated circuit
US5818789A (en) * 1995-10-10 1998-10-06 Holtek Microelectronics, Inc. Device and method for memory access
US6931470B2 (en) * 2002-02-11 2005-08-16 Motorola, Inc. Dual access serial peripheral interface
JP2004164579A (en) * 2002-09-24 2004-06-10 Sharp Corp Data bus width conversion apparatus and data processor
US7313639B2 (en) * 2003-01-13 2007-12-25 Rambus Inc. Memory system and device with serialized data transfer
JP2004227501A (en) * 2003-01-27 2004-08-12 Yamaha Corp Data transfer controller and method
US7502896B2 (en) * 2005-06-07 2009-03-10 Stmicroelectronics Pvt. Ltd. System and method for maintaining the integrity of data transfers in shared memory configurations
DE602006007778D1 (en) * 2005-08-31 2009-08-27 St Microelectronics Pvt Ltd System for accessing multiple data buffers of a device for capturing and processing data
US8977790B2 (en) * 2008-02-15 2015-03-10 Freescale Semiconductor, Inc. Peripheral module register access methods and apparatus
US8103803B2 (en) * 2008-11-21 2012-01-24 Nvidia Corporation Communication between a processor and a controller

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04241650A (en) * 1991-01-14 1992-08-28 Toshiba Corp One-bit writing processing system
JPH04291641A (en) * 1991-03-20 1992-10-15 Fujitsu Ltd Register device
JPH04353927A (en) * 1991-05-31 1992-12-08 Hitachi Ltd Micro processor
US20050177691A1 (en) 2004-02-09 2005-08-11 Arm Limited Access to bit values within data words stored in a memory

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2328075A4

Also Published As

Publication number Publication date
EP2328075A1 (en) 2011-06-01
US20110238883A1 (en) 2011-09-29
CN102150132A (en) 2011-08-10
EP2328075A4 (en) 2011-12-07
JPWO2010029682A1 (en) 2012-02-02

Similar Documents

Publication Publication Date Title
US6959367B2 (en) System having read-modify-write unit
JP5703378B2 (en) Alignment control
JP6005392B2 (en) Method and apparatus for routing
US7685351B2 (en) External device access apparatus
WO2009098737A1 (en) External device access apparatus, its controlling method and system lsi
WO2010029682A1 (en) Information processing device
US10437598B2 (en) Method and apparatus for selecting among a plurality of instruction sets to a microprocessor
JP2013092852A (en) Bus connection circuit, semiconductor device, and operation method for bus connection circuit
JP5309938B2 (en) Request processing apparatus, request processing system, and access test method
JP4471947B2 (en) Data processing apparatus and data processing method
WO2002073411A1 (en) Memory testing method, information recording medium, and semiconductor integrated circuit
US7047444B2 (en) Address selection for testing of a microprocessor
CN110362526B (en) SPI slave device, storage and adaptation method and computer storage medium
JP2011209859A (en) Information processor
JP2005276104A (en) Microcomputer
JP2008287557A (en) Bus system and microcomputer
JP4343244B2 (en) Microcomputer
US20090100220A1 (en) Memory system, control method thereof and computer system
US20040225851A1 (en) [device to extend an address space by inserting a waiting state and operation method for the device]
JP4151497B2 (en) Pipeline processing equipment
JP2003288316A (en) Microcomputer device, input/output device, and semiconductor device
JP2009048322A (en) Interface module and semiconductor integrated circuit
JP2001015690A (en) System lsi and initializing method therefor
JP2006202034A (en) Semiconductor integrated circuit device
JP2003178596A (en) Semiconductor integrated circuit

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980135242.9

Country of ref document: CN

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

Ref document number: 09812831

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010528600

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2009812831

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13062508

Country of ref document: US