WO2002048861A2 - Method of initiating a digital component - Google Patents
Method of initiating a digital component Download PDFInfo
- Publication number
- WO2002048861A2 WO2002048861A2 PCT/GB2001/005568 GB0105568W WO0248861A2 WO 2002048861 A2 WO2002048861 A2 WO 2002048861A2 GB 0105568 W GB0105568 W GB 0105568W WO 0248861 A2 WO0248861 A2 WO 0248861A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- digital component
- memory device
- synchronous memory
- microprocessor
- configuration
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
Definitions
- This invention relates to initiating or "booting up" a digital component. More specifically, it relates to the process of initiating a digital component in which one step involves the synchronous transfer of an initial instruction sequence to the component.
- the invention is usable across a range of different digital components, including but not limited to microprocessors, micro-controllers, System On Chip (SoC) devices, DSPs, synchronous memory devices, synchronous read only memory (SROM) and/ or synchronous flash memory.
- a microprocessor When a microprocessor is initiated (where the term 'initiated' refers to the microprocessor being powered up, booted or simply switched on) it must be able to run programs immediately.
- the environment in which the microprocessor may be placed is uncertain. Therefore, the microprocessor is usually set up so that its basic running parameters are set to the slowest or most conservative values possible, so as to ensure that it will run correctly in any likely environment.
- the first task for the microprocessor is usually to reset the device parameters to values optimised for the specific environment in which it finds itself; it does this by loading an initial instruction set. This procedure is usually carried out by loading to the microprocessor the initial instruction set from an associated or attached memory device.
- a READ command is sent to the memory device to transmit the initial instruction set to the microprocessor.
- This READ command is usually (but not necessarily) issued by the controller (which may be part of the microprocessor).
- this arrangement normally has an asynchronous interface between the memory device and the microprocessor. What this means is that the microprocessor does not expect the instructions to be sent from the memory in a time interval or clock rate that is matched to the microprocessor, but rather the microprocessor initially waits a period of time before commencing operation so as to allow for the complete delivery of the initial instruction set from the memory device.
- the advantage of this methodology is that the microprocessor can usually be guaranteed to have received the complete initial instruction set, even if the memory device transmitting it to the microprocessor is quite slow, and correct boot up can therefore be guaranteed.
- the disadvantage is that the duration of the boot up process can become quite long. Once the initial instruction set is received it can then reduce the microprocessor waiting period to a more appropriate setting for faster execution.
- a method of initiating a digital component comprising the following steps:
- a state machine configures the attached synchronous memory device to the same control parameters (e.g. clock settings) as the microprocessor's default values before a controller (which is usually part of the microprocessor) attempts to request that any data from the memory device be sent to the microprocessor. This ensures that data will be returned on the correct cycle when the controller requests the first instruction for the microprocessor.
- control parameters e.g. clock settings
- One benefit flowing from this arrangement is that more data instructions can be transmitted from the memory device to the microprocessor than can be transmitted using asynchronous memory. Another is increased flexibility in selecting memory devices to work with a specific microprocessor.
- the state machine operates once power has been applied to the device containing the microprocessor and the microprocessor's clock has stabilised.
- the state machine prevents the microprocessor from starting to run, by applying a hold signal to it keeping it in the RESET state.
- the state machine then issues commands to the memory device, configuring the control parameters in the memory device to be the same as the default parameters of the microprocessor device. After a certain number of clock cycles, the memory device should be correctly configured and the state machine ceases the hold signal to the microprocessor releasing it from its RESET state.
- the controller will then issue a READ command or commands to the synchronous memory device and because the memory device has been set to the same clock cycle as the microprocessor, the memory device will assert the data following the READ command in the correct cycle for the microprocessor.
- Figure 1 is a schematic of a SoC (system on a chip) implementation of the present invention, showing its relationship to various possible external memory devices.
- SoC system on a chip
- Figure 2 is a drawing showing the steps by which a microprocessor using a synchronous memory device according to the invention, and a state machine, is initialised (booted).
- FIG. 3 is a flowchart showing the steps by which a microprocessor using an asynchronous
- Halla has a processor core 1 and synchronous memory controller 2 and asynchronous memory controller 3 and may boot (begin running code) either from a read only memory (ROM) device 4 (which can be synchronous or asynchronous) or any of synchronous memory devices 5, 6 or 7.
- ROM read only memory
- Three dedicated boot selection pins determine which type of memory device it will boot from and the data width of that externally attached memory device.
- the particular microprocessor within Halla is referred to as the ARM920TTM processor and is based on a 16/32 bit embedded reduced instruction set (RISC) cached processor macrocell core developed by ARM Limited of the United Kingdom as part of a family of processors referred to as the ARM9TM Thumb® series. Development kits, including development boards for this processor are available from ARM Limited and further detailed information is available from the ARM website at arm.com.
- RISC embedded reduced instruction set
- the synchronous memory device may be a synchronous flash device with a CAS (Column Access) cycle of 3 (i.e. the number of clock cycles from asserting a location before data is ready to be read from the memory (on read mode)) and Burst Length of 4 (i.e the number of words to be read out of the device after expiry of a CAS cycle) or a synchronous ROM device with a RAS (Row Access) cycle of 2, CAS cycle of 5 and Burst length of 4, etc. This is again determined by the three dedicated boot selection pins. These settings guarantee booting from any device at a clock speed of up to 100MHz.
- CAS Cold Access
- the state machine When power is first applied to Halla, the state machine (physically resident in the external synchronous memory controller 2) applies a voltage to the RESET leads of the ARM920T microprocessor of Halla. This and subsequent process steps are illustrated in Figures 2 and 3.
- the state machine then issues 10 NOP commands (No Operation Commands - each NOP defines a clock cycle) to the synchronous memory device to initialise it, putting it into a known state.
- NOP commands No Operation Commands - each NOP defines a clock cycle
- the Load Mode Register command to configure the external synchronous memory device control parameters.
- the Load Mode Register command makes the memory cognisant of which clock cycles to use to properly construe incoming signals and on which clock cycles it needs to output data and is therefore key to implementing the invention on this architecture.
- the synchronous external memory device operating in sync with the microprocessor, then loads the initial instruction set to the microprocessor.
- the Halla device as set forth in Figure 1. has an address bus with address lines A[26:0] (i.e., there are 27 address lines numbers A26 through 0).
- the synchronous address bus (SYA[15:0]) is multiplexed onto Address lines A[17:2] (i.e. lines in the range 2 to 17 are shared).
- the command word is placed on the address Unes as shown below dependant upon whether a Synchronous ROM or SDRAM or Synchronous Flash is attached.
- nb RFU Reserve for Future
- the RAS setting is ignored by the device, i.e. it is not a number of clock cycles but a specified wait time. However, this controller must specify a number of clocks for RAS which is less than or equal to the specified RAS time.
- the Synchronous Memory control engine 2 arbitrates between the access requests from the two data ports (the main AHB bus and LCD AHB interfaces, where AHN is the name of an internal data bus in the proprietary AMBA® architecture), and generates an efficient sequence of commands, to issue to the Synchronous Memory devices to transfer the requested data.
- Synchronous Memory device in the system must be initialised before it can be used to ensure that the Controller and external devices have the same settings. If the system is booting up using a Synchronous ROM (on nSDCS3) then a short configuration sequence (10 NOPS + Load Mode Register + 3 NOPS) will be activated before releasing the Synchronous ROM (on nSDCS3).
- the following power-up sequence is executed by an internal state machine after power on reset: power is applied to the circuit with inputs CKE (Clock Enable) and DQM pulled high so that they rise with the supply NDD and VDDQ. Following power-up, the processor is held in the reset state whilst the clock runs.
- the Command pins are put in the NOP condition for 10 cycles by setting the Initialise and MRS bits to 1,1 respectively, whilst the SROM device is clocked.
- the default settings are written to the Mode register by setting the Initialise and MRS bits to 0,1 respectively and reading the appropriate address (see Table 5 above). After 3 clock cycles from the mode register set cycle, the device is ready for power-up, all data outputs will be in a high impedance state. The processor is released from the reset state.
Abstract
Description
Claims
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0030520.1 | 2000-12-14 | ||
GB0030520A GB0030520D0 (en) | 2000-12-14 | 2000-12-14 | Microprocessors,microcontrollers,system on chip (SoC) synchronous memory device boot,synchronous flash memory |
GB0103408.1 | 2001-02-10 | ||
GB0103408A GB0103408D0 (en) | 2000-12-14 | 2001-02-10 | Method of initiating a digital component |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2002048861A2 true WO2002048861A2 (en) | 2002-06-20 |
WO2002048861A3 WO2002048861A3 (en) | 2002-10-31 |
Family
ID=26245430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/GB2001/005568 WO2002048861A2 (en) | 2000-12-14 | 2001-12-14 | Method of initiating a digital component |
Country Status (2)
Country | Link |
---|---|
GB (1) | GB2372603A (en) |
WO (1) | WO2002048861A2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5410707A (en) * | 1991-04-29 | 1995-04-25 | Intel Corporation | Bootstrap loading from external memory including disabling a reset from a keyboard controller while an operating system load signal is active |
GB2304209A (en) * | 1995-08-04 | 1997-03-12 | Motorola Ltd | Starting up a processor system |
US6058474A (en) * | 1997-01-24 | 2000-05-02 | Texas Instruments Incorporated | Method and apparatus for DMA boot loading a microprocessor without an internal ROM |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5386385A (en) * | 1994-01-31 | 1995-01-31 | Texas Instruments Inc. | Method and apparatus for preventing invalid operating modes and an application to synchronous memory devices |
US5566325A (en) * | 1994-06-30 | 1996-10-15 | Digital Equipment Corporation | Method and apparatus for adaptive memory access |
US6134638A (en) * | 1997-08-13 | 2000-10-17 | Compaq Computer Corporation | Memory controller supporting DRAM circuits with different operating speeds |
-
2001
- 2001-12-14 GB GB0129970A patent/GB2372603A/en not_active Withdrawn
- 2001-12-14 WO PCT/GB2001/005568 patent/WO2002048861A2/en active Search and Examination
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5410707A (en) * | 1991-04-29 | 1995-04-25 | Intel Corporation | Bootstrap loading from external memory including disabling a reset from a keyboard controller while an operating system load signal is active |
GB2304209A (en) * | 1995-08-04 | 1997-03-12 | Motorola Ltd | Starting up a processor system |
US6058474A (en) * | 1997-01-24 | 2000-05-02 | Texas Instruments Incorporated | Method and apparatus for DMA boot loading a microprocessor without an internal ROM |
Also Published As
Publication number | Publication date |
---|---|
GB0129970D0 (en) | 2002-02-06 |
WO2002048861A3 (en) | 2002-10-31 |
GB2372603A (en) | 2002-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI338835B (en) | Method and apparatus for controlling a data processing system during debug | |
JP4145146B2 (en) | Data processing system and method having on-chip background debug system | |
US6480929B1 (en) | Pseudo-concurrency between a volatile memory and a non-volatile memory on a same data bus | |
KR100805603B1 (en) | Integrated circuit with flash memory | |
US6874095B2 (en) | Memory control system | |
US7356717B2 (en) | Information processing apparatus with central processing unit and main memory having power saving mode, and power saving controlling method | |
US8499182B2 (en) | Semiconductor device and data processing system | |
US8531893B2 (en) | Semiconductor device and data processor | |
JP2004110785A (en) | Memory controller | |
US6721840B1 (en) | Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory | |
US6851014B2 (en) | Memory device having automatic protocol detection | |
US6675303B1 (en) | PC card controller with advanced power management reset capabilities | |
US5559458A (en) | Reset circuit for a pipelined signal processor | |
JP2636691B2 (en) | Microcomputer | |
US20070283139A1 (en) | Information processing apparatus and control method used thereby | |
US7315928B2 (en) | Apparatus and related method for accessing page mode flash memory | |
US6477596B2 (en) | Bus controlling method and apparatus for delaying activation of a bus cycle | |
WO2002048861A2 (en) | Method of initiating a digital component | |
US20060020778A1 (en) | Programmable memory initialization system and method | |
CN115016352A (en) | Instruction reading structure and reading method of MCU | |
US6618790B1 (en) | Burst suspend and resume with computer memory | |
JPH0789346B2 (en) | DMA controller | |
US7747832B2 (en) | Method for controlling a memory access | |
JPH1091568A (en) | Method and device for accessing chip selection enable device in data processing system | |
JP3033755B1 (en) | Arithmetic processing unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase in: |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |
|
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) |