WO2016036281A1 - Устройство прямого отображения адресов данных - Google Patents

Устройство прямого отображения адресов данных Download PDF

Info

Publication number
WO2016036281A1
WO2016036281A1 PCT/RU2015/000553 RU2015000553W WO2016036281A1 WO 2016036281 A1 WO2016036281 A1 WO 2016036281A1 RU 2015000553 W RU2015000553 W RU 2015000553W WO 2016036281 A1 WO2016036281 A1 WO 2016036281A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
external serial
serial rom
microprocessor core
rom
Prior art date
Application number
PCT/RU2015/000553
Other languages
English (en)
French (fr)
Inventor
Дмитрий Сергеевич КОРОЛЕВ
Константин Львович ГУРИН
Павел Николаевич ОСИПЕНКО
Константин КРАСИК
Original Assignee
Открытое Акционерное Общество "Байкал Электроникс"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Открытое Акционерное Общество "Байкал Электроникс" filed Critical Открытое Акционерное Общество "Байкал Электроникс"
Priority to EA201700119A priority Critical patent/EA039007B1/ru
Publication of WO2016036281A1 publication Critical patent/WO2016036281A1/ru

Links

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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Definitions

  • the invention relates to computer technology, in particular to memory systems and methods for controlling them with the ability to run a program from the same drive where it is located, without first downloading it to the microprocessor RAM as applied to low-cost computer systems with a small amount of RAM and to transmission methods data in them.
  • a solution is known according to US patent 6,601,167 B 1 (priority from 01/14/2000), which includes a method for initializing a computer system, including a processor and sequential access memory with a download program stored in it, and a corresponding computer system for implementing the method.
  • the bootloader in response to the initialization of the computer system, first controls the serial storage device to read the boot program, and then controls the processor to switch to the boot program in the sequential access memory.
  • the first page of the boot program memory calls boot code, which must be transferred to random access memory (RAM).
  • the processor switches to the code in RAM, forcing the remaining part of the boot code from the serial access memory to be transferred to RAM and executing it.
  • the disadvantage of this solution is the need to use internal RAM, even for small computer systems.
  • boot devices using NAND flash memory for example, according to US patent 7849302, priority of April 10, and a method of obtaining boot commands from non-volatile memory, for example, the decision of US patent 20068533448 (priority of 12/06/2010 ), which can be implemented by detecting a reset signal related to the device and obtaining a predetermined data page from the non-volatile memory area in the register associated with the non-volatile memory, by paging data from rgonezavisimoy memory, and the data page itself includes devices boot command.
  • the address included in it is used to identify the location of one or more commands in the register.
  • NAND memory has a lower cost and higher density and is important for the implementation of low-power processors.
  • the pre-selected address is transferred to the NAND flash memory. This pre-selected address is the same as that expected by the processor core at the beginning of the boot process.
  • the NAND flash memory moves to the next, sequential memory cell and, thus, outputs a sequence of commands on the data line.
  • NAND flash data lines provide input lines for transferring data to the processor core.
  • the processor core at boot time, receives new boot instructions at the point in time when they exit the NAND flash memory.
  • the claimed boot method involves the use of exclusively NAND Flash memory, and for the boot method that it uses a multi-signal interface between the microprocessor and the NAND Flash chip, which, firstly, requires a large number of pins of the system chip on a chip (SN), and, secondly, it requires a specialized microprocessor device interface.
  • this approach may require the availability of internal RAM.
  • US patent 2004/0230738 A1 (priority 29.10.2003), in the form of a device that allows you to control the execution of commands directly from serial flash memory, and a flash memory chip using this device, while the ROM controller with with a certain amount of data storage has access to ROM for reading entire pages of memory in which the required data is stored, and can transfer the necessary data to the main control module or execute them.
  • the device includes a cache module for accessing the indicated ROM memory address in response to a command received from the control module, and reading or writing data to the main control module, and a ROM controller with a bootloader that allows loading by reading data from the ROM with the storage boot codes in the buffer and immediate transfer of boot codes to the main control module upon request.
  • the main disadvantage is the mandatory availability of internal RAM.
  • the SoC chip containing the microprocessor core starts the initialization procedure, for which the microprocessor core starts reading and executing the instructions of the initialization program from some starting address in its own address space.
  • the initialization program is located in a bootable non-volatile read-only memory (ROM), made, for example, using Flash technology, or boot ROM is implemented as part of a microcircuit, which requires a special process, makes the process making a chip is more expensive.
  • ROM bootable non-volatile read-only memory
  • boot ROM is implemented as part of a microcircuit, which requires a special process, makes the process making a chip is more expensive.
  • access to a parallel-type boot ROM requires several dozen pins of the SoC chip, including address, data, and control pins.
  • serial ROMs for example, SPI format (serial peripheral interface) for storing initial initialization programs that transmit read and write data, control and status information over a single-bit serial channel.
  • SPI type ROM chips use three lines for receiving and transmitting data:
  • the available solutions for working with such ROMs require the presence of an initial microROM integrated in the SoC chip and an internal boot RAM RAM.
  • the microprocessor core reads and executes instructions from the micro ROM, the result of which will be the copying of the initial initialization program from the serial ROM to the internal boot RAM, after which the control is transferred to the internal boot RAM command, which affects the speed and design complexity and therefore the cost of the system.
  • an intermediate unit (1) - a device for direct mapping of data addresses located in an external serial ROM (2) into the address space of a microprocessor core (3).
  • a device (1) that includes a read data register (4), an address register (5), and a state machine of a direct address mapping unit (6) a state machine of a direct address mapping unit that automatically accesses the registers of an external serial ROM controller (7).
  • the function of the device (1) for direct mapping of data addresses located in an external serial ROM (2) into the address space of the microprocessor core (3) is to convert read requests from the ROM (2) from the microprocessor core (3) into a sequence of calls to the controller (7) of the external serial ROM (2), the result of which is a set of data words read from the external serial ROM (2) ( Figure 1) and transmitted via the data bus to the microprocessor core.
  • the technical result of using the above-described device (1) for direct mapping of data addresses located in an external serial ROM (2) into the address space of a microprocessor core is to simplify the design by replacing the parallel method of transferring data to a serial one, reducing the number of contacts, and reducing the RAM requirements if it is possible to abandon the initial microROM and internal boot RAM built into the microcircuit, which in general also leads to a decrease in material consumption, and, therefore atelno to reduce chip cost.
  • Fig 1 Computer system and its operation with a device for direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core.
  • FIG. 2 The algorithm of the device for the direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core.
  • the claimed invention in the form of a device (1) for direct mapping of data addresses located in an external serial ROM (2) into the address space of a microprocessor core (3) includes a read register data (4), address register (5) and state machine (6) of the device (1) for direct mapping of data addresses located in an external serial ROM (2) into the address space of the microprocessor core (3).
  • device (1) is located between the microprocessor core (3) and the controller (7) of an external serial ROM (2).
  • the device (1) converts the reading cycle from the side of the microprocessor core (3) into a sequence of calls to the controller (7) of the external serial ROM (2), as a result of which the data word read from the external serial ROM (2) is obtained from it (Fig.
  • the best embodiment of the invention is an option in which the device (1) is used to display in the address space of the microprocessor core data addresses that are instructions of the initial download code stored in an external serial ROM, but the purpose of the device (1) may not be limited to this function, since an external serial ROM can continue to be used as a data source after reading the instructions of the initial boot code.
  • a system on a chip using a device (1) for direct mapping of data addresses located in an external serial ROM (2) into a microprocessor core (3) includes a system on a chip that includes a microprocessor core (3), an external serial ROM controller (7) (2) for parallel transmission of data words read from an external serial ROM, device (1) direct mapping of data addresses, which are located in an external serial ROM into the address space of the microprocessor core to enable the exchange of data between it and the processor core (3) by using an intra-system interface on the chip.
  • the device (1) is located between the controller (7) of the external serial ROM (2) and the microprocessor core (3).
  • the microprocessor core (3) is capable of reading data from an external serial ROM (2) external to the SN using the controller (7) of the external serial ROM (2) and device (1).
  • the interaction of the microprocessor core (3) with the device (1) can be performed using any intranet interface of the SoC: AMBA / OCP /, etc. In such interfaces, a bus set consisting of at least three buses can be distinguished - data buses (8), address buses (9), control buses (10).
  • An external serial ROM controller includes a state machine (11) of a serial ROM controller and a set of registers, among which one or more status registers (12), one or more control registers (13), and a data register (14) can be distinguished.
  • Data exchange between the device (1) for direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core and the controller (7) of the external serial ROM can be carried out in accordance with any protocol supported by the controller (7) of the external serial ROM.
  • Data is exchanged with an external serial ROM (2) via single-bit serial channels (15).
  • a flash memory chip with a serial interface can be used, which is used as an SPI interface, and an SPI controller is used as an external serial ROM controller.
  • the computer system using the device (1) direct address mapping data can map into the address space of the microprocessor core data addresses, which are instructions of the initial boot code, but is not limited to this, and the external serial ROM continues to be used as a data source even after reading the instructions of the initial boot code.
  • SoC itself includes a microprocessor core (3), an external serial ROM controller (7) (2) for parallel transmission of data words read from an external serial ROM, and a device (1) that directly displays data addresses located in an external serial ROM (2), in the address space of the microprocessor core (3) using the data bus (8), address bus (9) and control bus (10).
  • one or more control registers of the controller (7) of the external serial ROM (2) are automatically initialized using the state machine of the device (1) for direct mapping of data addresses, located in an external serial ROM (2) containing data (for example, the initial boot code in the best embodiment of the invention) into the address space of the microprocessor core and expect read requests from the microprocessor core (3), and upon receipt of a read request, addresses from the microprocessor core (3) on the control bus (10) and on the address bus (9), respectively, using the state machine of the device (1), make an appropriate record in the data register (14) and, possibly, in the control register (13) of the controller (7) ) external afterbirth memory (2), then using the state machine (6) of the device (1), read the data register (14) of the controller (7) of the external serial ROM (2) until the data word is completely read, which is then transmitted to the microprocessor core (3) via the data bus (8) of the device (1) for use in the microprocessor core. Reading
  • the reset state refers to the state of the chip with the active level of the reset signal - the Reset signal. Accordingly, the conclusion of the system from the reset state is the transfer of the reset signal to an inactive state.
  • the state machine (6) of the device (1) After the reset signal is removed, the state machine (6) of the device (1) automatically initializes the controller (7) of the external serial ROM (2) (for example, the SPI controller).
  • Initialization of an external serial ROM controller means initialization of its control register (13). In this case, implementations are possible in which the controller of the external serial ROM contains not one, but several control registers. In this case, the state machine (6) of the device (1) should automatically initialize all control registers of the controller (7) of the external serial ROM (2).
  • the state machine (6) of the device (1) waits for requests from the microprocessor core (3) to read an external serial ROM (2) to the addresses mapped to the address space of the microprocessor core (3).
  • a read request is determined by the state of the control bus signals (10) and is accompanied by an address, respectively, via the address bus (9)
  • the state machine (6) of the device (1) Upon receipt of a read request from the microprocessor core (a read request is determined by the state of the control bus signals (10) and is accompanied by an address, respectively, via the address bus (9)), the state machine (6) of the device (1) writes to the data register (14) controller (7) external sequential serial ROM (2) read ROM (2), as well as the address at which the read ROM (2).
  • controller (7) of the external serial ROM There are also possible implementations of the controller (7) of the external serial ROM, in which the state machine (6) of the device (1) also needs to write to the control register (13) of the controller (7) of the external serial ROM (2) for controlling the transfer of the read command and address to the external serial ROM (2).
  • the state machine (6) of the device (1) waits for the appearance of a data frame read from the ROM (2) in the data register (14) of the controller (7) of the external serial ROM (2).
  • the presence of data in the data register (14) can be determined either by the results of periodic polls of the state register of the controller (12) of the serial (7) ROM (2), or by the state of any control signals (for example, interrupt signals) coming out of the controller ( 7) sequential ROM (2).
  • the state machine (6) of the device (1) After the frame of the read data appears in the data register (14) of the serial ROM controller (7), the state machine (6) of the device (1) reads this data and checks whether the requested data word has been completely read. If the data word was not completely read, the state machine (6) of the device (1) expects the controller (7) to receive an external serial ROM (2) of the next data frame in the data register (14).
  • this data word is transmitted to the microprocessor core (3) via the data bus (8).
  • the transmission of a data word may be accompanied by a change in the state of the control bus signals (10).
  • SPI Flash memory can be used as an external serial ROM (2), and an SPI controller as a controller (7) of an external serial ROM (2), and use a serial interface to an external serial ROM (2) SPI interface.
  • the ROM (2) requires only three ports for receiving and transmitting data on the bus wires (15):
  • the microcircuit of the external serial ROM (2) is controlled by the controller (7) of the external serial ROM (2) through a set of commands of this ROM.
  • the controller (7) of the serial ROM (2) contains a set of auxiliary registers, among which one can distinguish the data register (14), control register (13) and status register (12).
  • the controller (7) of the external serial ROM (2) contains several control and status registers, as well as separately registers of read and written data.
  • for reading data from an external serial ROM (2) requires the following sequence of operations:
  • the state machine (6) of the device (1) in the particular case of execution can be presented in the form of two machines - the main and auxiliary, while the auxiliary machine will be designed exclusively for interaction with the microprocessor core (3) according to the selected protocol and is controlled by the main machine.
  • the data transfer method is implemented in the computer system described above, which includes a system on a chip and an external serial ROM, while the system on a chip includes a microprocessor core, an external serial ROM controller for parallel transmission of data words read from a serial ROM, and a device for direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core with the possibility of uschestvleniya data exchange between the processor core and by using an intra-system interface on the chip, comprising a set of buses, including at least a data bus, an address bus and a control bus, and the named device for direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core contains a read data register, an address register, and a device state machine direct mapping of addresses, with the possibility of direct mapping of data addresses located in an external serial ROM into the address space of the microprocessor core, conversion VAVO read by the microprocessor core in a sequence of calls to external serial ROM controller and transmitting the data
  • At least one control register of the external serial ROM controller is automatically initialized using the state machine of the device (1) to directly display the data addresses located in an external serial ROM, in the address space of the microprocessor core, while waiting for the read requests from the microprocessor core nyh.
  • the state machine of the device for directly displaying data addresses, located in an external serial ROM, in the address space of the microprocessor core produce the corresponding entries in the data register of the controller of the serial ROM.
  • the status register of the serial ROM controller is read until the next data frame read from the external one appears in the data register of the serial ROM controller serial ROM. Then, the data register of the serial ROM controller is read, repeating the last two operations of reading the status register and reading the data register until the requested data word is completely read, which is then transmitted to the microprocessor core via the data bus of the device for directly displaying data addresses located in the external serial ROM, in the address space of the microprocessor core for use in the microprocessor core, until the receipt of requests to read data from the ROM from the microprocessor core.
  • a flash memory chip with a serial interface for example, with an SPI interface
  • an SPI controller can be used as a controller (7).
  • the implementation of the described method of data transfer can be used when instructions for the initial boot code (in the best embodiment of the invention) are read as data from an external serial ROM, as well as after transmitting instructions for the initial boot code of the computer system with continued use of an external serial ROM as a data source.
  • the reset signal is removed from the computer system at the moment when the external serial ROM is ready for operation, while the microprocessor accesses the data in the external serial ROM at the address known in advance for the microprocessor architecture used.
  • the direct address mapping devices Upon receipt of a read request and addresses from the microprocessor core via the control bus and address bus, respectively, using the state machine, the direct address mapping devices also write to at least one control register of the external serial ROM controller. To determine the presence of a data frame read from a serial ROM, the interrupt control signals of the external serial ROM controller are used in the data register of the external serial ROM controller.
  • serial interface for example, SPI
  • external serial ROM chip for example, a Flash memory chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Microcomputers (AREA)
  • Digital Computer Display Output (AREA)

Abstract

Изобретение относится к системам памяти и способам управления ими с возможностью выполнять программу с того же накопителя, где она размещена, без ее предварительной загрузки в оперативную память микропроцессора применительно к недорогим компьютерным системам с небольшим объемом оперативной памяти и к способам передачи данных в них. Компьютерная система, включающая в себя систему на кристалле и внешнее последовательное ПЗУ, и соответствующий способ передачи данных основаны на работе устройства прямого отображения адресов данных внешнего последовательного ПЗУ, в адресное пространство микропроцессорного ядра, которое характеризуется тем, что включает в себя регистр считанных данных, регистр адреса и конечный автомат устройства прямого отображения адресов, с возможностью осуществления прямого отображения адресов данных внешнего последовательного ПЗУ, в адресное пространство микропроцессорного ядра, преобразования запросов на чтение со стороны микропроцессорного ядра в последовательность обращений к контроллеру внешнего последовательного ПЗУ, и передачи по шине данных последовательности слов данных, считанных из внешнего последовательного ПЗУ, в микропроцессорное ядро.

Description

УСТРОЙСТВО ПРЯМОГО ОТОБРАЖЕНИЯ АДРЕСОВ ДАННЫХ
ОБЛАСТЬ ТЕХНИКИ
Изобретение относится к компьютерной технике, в частности к системам памяти и способам управления ими с возможностью выполнять программу с того же накопителя, где она размещена, без её предварительной загрузки в оперативную память микропроцессора применительно к недорогим компьютерным системам с небольшим объёмом оперативной памяти и к способам передачи данных в них.
УРОВЕНЬ ТЕХНИКИ
Известно решение по патенту США 6601167 В 1 (приоритет от 14.01.2000), включающее в себя способ инициализации компьютерной системы, включающей процессор и память последовательного доступа с программой загрузки, хранящейся в ней, и соответствующую компьютерную систему для осуществления способа. Загрузчик в ответ на инициализацию компьютерной системы, сначала управляет последовательным запоминающим устройством для чтения загрузочной программы, после чего управляет процессором для перехода к работе загрузочной программы в памяти последовательного доступа. Первая страница памяти программы начальной загрузки вызывает загрузочный код, который должен быть передан в оперативное запоминающее устройство (ОЗУ). Затем процессор переключается на код в ОЗУ, заставляет передать оставшуюся часть загрузочного кода из памяти последовательного доступа в ОЗУ и выполнить его. Недостатком данного решения является необходимость использования внутреннего ОЗУ даже для небольших компьютерных систем.
Известны другие решения, включающие в себя устройства загрузки с использованием NAND флэш-памяти, например, по патенту США 7849302, приоритет от 10 апреля, и способ получения команд загрузки из энергонезависимой памяти, например, решение по патенту США 20068533448 (приоритет от 06.12.2010), которые могут быть реализованы путем обнаружения сигнала сброса, относящегося к устройству, и получения заранее определенной страницы данных из энергонезависимой области памяти в регистр, связанный с энергонезависимой памятью, при постраничном извлечении данных из энергонезависимой памяти, при этом сама страница данных включает в себя команды загрузки устройства. При получении команды на считывание данных, хранящихся в регистре, используют включенный в нее адрес, идентифицирующий местоположение одной или более команд в регистре. В результате из регистра извлекается одна или более команд для исполнения процессором. Эти команды включают в себя команды загрузки данных из регистра памяти во внутреннее ОЗУ. Недостатком решений по данному патенту является то, что данный патент подразумевает использование многосигнального интерфейса NAND Flash памяти, описанного в стандарте ONFI. Стоит также отметить, что данный патент подразумевает использование в качестве загрузочного ПЗУ исключительно NAND Flash память, что сужает круг устройств, которые можно использовать в качестве ПЗУ в соответствующих компьютерных системах. Из заявки на получение патента США 2005/0108500 (приоритет от 18.11.2003), известно решение архитектуры загрузочной флэш-памяти, которая позволяет использовать не- адресуемую память NAND, которая будет использоваться в качестве загрузочной памяти в цифровых процессорных системах. NAND- память имеет более низкую стоимость и более высокую плотность и важна для реализации процессоров с низким энергопотреблением. В начале процедуры (последовательной) загрузки, предварительно выбранный адрес передается в NAND флэш-память. Этот предварительно выбранный адрес совпадает с тем, который ожидает процессорное ядро в начале процесса загрузки. После завершения цикла выбранной длительности флэш-память NAND переходит к следующей, последовательной ячейке памяти и, таким образом, выводит последовательность команд по линии передачи данных. Линии передачи данных из флэш-памяти NAND предоставляют собой линии входа для передачи данных процессорному ядру. Процессорное ядро во время загрузки компьютера получает новые загрузочные команды в тот момент времени, когда они выходят из NAND флэш-памяти. Недостатками данного решения является то, что заявленный метод загрузки предусматривает использование исключительно NAND Flash памяти, а для метода загрузки то, что в нем используется многосигнальный интерфейс между микропроцессором и микросхемой NAND Flash, что, во-первых, требует большого количества выводов микросхемы системы на кристалле (Сн ), а, во-вторых, требует наличия специализированного интерфейса устройства микропроцессора. Кроме того, данный подход может потребовать наличия внутреннего ОЗУ. Известно также решение по заявке на получение патента США 2004/0230738 А1 (приоритет 29.10.2003), в виде устройства, позволяющего управлять исполнением команд непосредственно из последовательной флэш-памяти, и чип флэш-памяти с использованием этого устройства, при этом контроллер ПЗУ с определенным объемом хранения данных имеет доступ к ПЗУ для чтения целых страниц памяти, в которых хранятся требуемые данные, и может передавать необходимые данные основному управляющему модулю или исполнять их. Устройство включает в себя кэш-модуль для доступа к указанному адресу памяти ПЗУ в ответ на команду, полученную от управляющего модуля, и чтения или записи данных основным управляющим модулем, и контроллер ПЗУ с загрузчиком, позволяющим осуществлять загрузку путем чтения данных с ПЗУ с хранением загрузочных кодов в буфере и немедленной передачей загрузочных кодов в основной управляющий модуль по его требованию. Основным недостатком является обязательное наличие внутреннего ОЗУ.
Все известные решения объединяет то, что после включения питания, микросхема СнК, содержащая микропроцессорное ядро, начинает процедуру начальной инициализации, для чего микропроцессорное ядро начинает считывать и выполнять инструкции программы начальной инициализации с некоторого начального адреса в собственном адресном пространстве. Т.е. программа начальной инициализации располагается в загрузочном энергонезависимом постоянном запоминающем устройстве (ПЗУ), выполненном, например, по технологии Flash, или загрузочное ПЗУ реализуют в составе микросхемы, что требует наличия специального технологического процесса, делает процесс изготовления микросхемы дороже. При использовании другого более дешевого и распространенного варианта с применением внешней микросхемы загрузочного ПЗУ типа Flash для доступа к загрузочному ПЗУ параллельного типа требуется несколько десятков выводов микросхемы СнК, в том числе, выводы адреса, данных и управления.
Кроме того, для уменьшения необходимого количества выводов как СнК, так и микросхемы памяти, уменьшения размеров и снижения стоимости корпусов СнК и микросхем памяти, а, следовательно, размеров и стоимости печатных плат компьютерных систем широко используются ПЗУ последовательного типа (например, формата SPI (последовательный периферийный интерфейс)) для хранения программы начальной инициализации, которые осуществляют передачу данных чтения и записи, управляющую и статусную информацию по однобитному последовательному каналу. В частности, микросхемы ПЗУ типа SPI, используют три линии для приема и передачи данных:
- вход для тактирования передаваемых или принимаемых данных (Serial Clock);
- вход для передачи данных от контроллера к микросхеме (SI - Serial Input), по этой линии побитно передают адрес, данные для записи, и коды команд управления микросхемой;
- выход для передачи данных от микросхемы к контроллеру, по этой линии побитно передают читаемые данные, а также информацию о состоянии микросхемы (SO - Serial Output).
Для взаимодействия с ПЗУ такого типа требуется специальный контроллер, инициирующий операции чтения/записи/стирания и т.д. путем подачи специализированной последовательности команд. Недостатком такого рода решений является то, что содержимое последовательного ПЗУ прямо не отображается в адресном пространстве микропроцессорного ядра, что сильно влияет на сложность программного обеспечения.
Имеющиеся решения для работы с таким ПЗУ требуют наличия встроенного в микросхему СнК начального микроПЗУ и внутреннего загрузочного оперативного запоминающего устройства ОЗУ. В этом случае, после включения питания микропроцессорное ядро считывает и выполняет инструкции из микроПЗУ, результатом выполнения которых будет копирование программы начальной инициализации из последовательного ПЗУ во внутреннее загрузочное ОЗУ, после чего происходит передача управления на команду внутреннего загрузочного ОЗУ, что сказывается на быстродействии, сложности конструкции и, следовательно, стоимости системы.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Для преодоления указанных недостатков в заявленном решении предлагается использовать промежуточный блок (1 ) - устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3). Устройство ( 1 ) которое включает в себя регистр считанных данных (4), регистр адреса (5) и конечный автомат блока прямого отображения адресов (6) конечный автомат блока прямого отображения адресов, производящий автоматические обращения к регистрам контроллера внешнего последовательного ПЗУ (7). При использовании устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) в компьютерной системе его располагают между микропроцессорным ядром (3) и контроллером (7) внешнего последовательного ПЗУ (2). Функция устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) заключается в преобразовании запросов на чтение ПЗУ (2), поступающих со стороны микропроцессорного ядра (3), в последовательность обращений к контроллеру (7) внешнего последовательного ПЗУ (2), результатом работы которого является набор слов данных, считанных из внешнего последовательного ПЗУ (2) (Фиг.1) и переданных по шине данных в микропроцессорное ядро.
В результате работы компьютерной системы с использованием устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра осуществляется передача данных компьютерной системой (а в качестве наилучшего варианта осуществления компьютерной системы осуществляется передача начального кода загрузки компьютерной системы), располагающихся во внешнем последовательном ПЗУ, благодаря тому, что в системе, состоящей из микропроцессорного ядра, внешнего последовательного ПЗУ, контроллера последовательного ПЗУ, устройства прямого отображения адресов данных, располагающихся в последовательном ПЗУ, в адресное пространство микропроцессорного ядра, шины данных, шины адреса и шины управления, в момент готовности к работе внешнего последовательного ПЗУ с компьютерной системы снимают сигнал сброса, производят автоматическую инициализацию одного или нескольких регистров управления контроллера внешнего последовательного ПЗУ с использованием конечного автомата устройства прямого отображения в адресное пространство микропроцессорного ядра адресов данных, располагающихся во внешнем последовательном ПЗУ, содержащем начальный код загрузки, и ожидают от микропроцессорного ядра поступления запросов на чтение, а при получении запроса на чтение и адреса от микропроцессорного ядра по шине управления и по шине адреса, соответственно, с использованием конечного автомата устройства
(1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра производят соответствующую запись в регистр данных и, быть может, в регистр управления контроллера внешнего последовательного ПЗУ, после этого с использованием конечного автомата устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра выполняют чтение регистра данных контроллера внешнего последовательного ПЗУ до тех пор, пока полностью не считают слово данных, которое затем передают в микропроцессорное ядро по шине данных блока прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра для использования в микропроцессорном ядре, до окончания получения запросов на чтение данных из ПЗУ
(2) . Несмотря на то, что основная часть обращений на чтение ПЗУ со стороны микропроцессора происходит во время загрузки, такие обращения могут поступать в течение всей работы компьютерной системы, что позволяет использовать внешнее последовательное ПЗУ в качестве источника данных и после загрузки.
Техническим результатом использования описанного выше устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра, является упрощение конструкции благодаря замене параллельного способа передачи данных в последовательный, снижению числа контактов, снижению требований к объёму ОЗУ при возможности отказа от встроенных в микросхему начального микроПЗУ и внутреннего загрузочного ОЗУ, что в целом приводит также к снижению материалоемкости, и, следовательно, к снижению стоимости микросхемы.
ПЕРЕЧЕНЬ ЧЕРТЕЖЕЙ
Решение проблемы и сущность заявленных технических решений могут быть пояснены с помощью следующих чертежей.
Фиг 1. Компьютерная система и схема ее работы с устройством прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра.
Фиг. 2. Алгоритм работы устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра.
ПРИМЕРЫ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Заявленное изобретение в форме устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) включает в себя регистр считанных данных (4), регистр адреса (5) и конечный автомат (6) устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2) в адресное пространство микропроцессорного ядра (3). В компьютерной системе устройство (1) располагается между микропроцессорным ядром (3) и контроллером (7) внешнего последовательного ПЗУ (2). Устройство (1) преобразует цикл чтения со стороны микропроцессорного ядра (3) в последовательность обращений к контроллеру (7) внешнего последовательного ПЗУ (2), в результате чего на выходе из него получают слово данных, считанное из внешнего последовательного ПЗУ (2) (фиг.1), которое передается в микропроцессорное ядро (3) по шине данных (8). Функция преобразования цикла чтения со стороны микропроцессорного ядра (3) в последовательность обращений к контроллеру внешнего последовательного ПЗУ (7) осуществляется благодаря конечному автомату (6) устройства (1 ). Алгоритм работы устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) представлен на фиг. 2. Возможна ситуация, когда при работе устройства (1) в качестве внешнего последовательного ПЗУ используют микросхему Flash памяти с последовательным интерфейсом, в качестве которого используют SPI интерфейс, а в качестве контроллера этого последовательного ПЗУ используют SPI контроллер. Как уже указывалось выше наилучшим вариантом осуществления изобретения является вариант, при котором устройство (1) используется для отображения в адресное пространство микропроцессорного ядра адреса данных, являющихся инструкциями начального кода загрузки, хранящегося во внешнем последовательном ПЗУ, но назначение устройства (1) может быть и не ограничено данной функцией, поскольку внешнее последовательное ПЗУ может продолжать использоваться в качестве источника данных после завершения чтения инструкций начального кода загрузки.
Заявленное изобретение по второму независимому пункту формулы - компьютерная система (фиг.1) систему на кристалле и внешнее последовательное ПЗУ При этом система на кристалле с использованием устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в микропроцессорное ядро (3) включает в себя при этом система на кристалле включает в себя микропроцессорное ядро (3), контроллер (7) внешнего последовательного ПЗУ (2) для параллельной передачи слов данных, считанных из внешнего последовательного ПЗУ, и устройство (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра с обеспечением возможности осуществления обмена данными между ним и процессорным ядром (3) путем использования внутрисистемного интерфейса системы на кристалле. Устройство (1) располагают между контроллером (7) внешнего последовательного ПЗУ (2) и микропроцессорным ядром (3). Оно предназначено для преобразования циклов чтения со стороны микропроцессорного ядра (3) в последовательность обращений к контроллеру (7) внешнего последовательного ПЗУ (2), в результате чего на выходе из устройства (1) получают слова данных, считанные из внешнего последовательного ПЗУ (2) (Фиг. 1), которые передаются в микропроцессорное ядро (3) по шине данных (8). Микропроцессорное ядро (3) способно производить чтение данных из внешнего по отношению к Сн внешнего последовательного ПЗУ (2) с помощью контроллера (7) внешнего последовательного ПЗУ (2) и устройства (1). Взаимодействие микропроцессорного ядра (3) с устройством (1) может производиться по любому внутрисистемному интерфейсу СнК: АМВА/ОСР/и т.д. В таких интерфейсах можно выделить набор шин, состоящий по меньшей мере из трех шин - шины данных (8), шины адреса (9), шины управления (10). Контроллер внешнего последовательного ПЗУ включает в себя конечный автомат (11) контроллера последовательного ПЗУ и набор регистров, среди которых можно выделить один или несколько регистров статуса (12), один или несколько регистров управления (13) и регистр данных (14). Обмен данными между устройством (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра и контроллером (7) внешнего последовательного ПЗУ может осуществляться в соответствии с любым протоколом, поддерживаемым контроллером (7) внешнего последовательного ПЗУ. Обмен данными с внешним последовательным ПЗУ (2) производится по однобитным последовательным каналам (15). В компьютерной системе при работе устройства прямого отображения адресов данных в качестве внешнего последовательного ПЗУ может быть использована микросхема Flash памяти с последовательным интерфейсом, в качестве которого используют SPI интерфейс, а в качестве контроллера внешнего последовательного ПЗУ используют SPI контроллер. В описанной конфигурации компьютерная система с использованием устройства (1) прямого отображения адресов данных может отображать в адресное пространство микропроцессорного ядра адреса данных, являющиеся инструкциями начального кода загрузки, но не ограничивается этим, и внешнее последовательное ПЗУ продолжают использовать в качестве источника данных и после завершения чтения инструкций начального кода загрузки.
В результате работы описанной выше компьютерной системы, использующей устройство (блок) (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) осуществляют способ передачи данных (загрузки начального кода загрузки в частном случае) компьютерной системой, располагающихся во внешнем последовательном ПЗУ (2), благодаря тому, что в системе, включающей в себя СнК и внешнее по отношению к СнК последовательное ПЗУ (2). Сама СнК включает в себя микропроцессорное ядро (3), контроллер (7) внешнего последовательного ПЗУ (2) для параллельной передачи слов данных, считанных из внешнего последовательного ПЗУ, и устройство (1), которое осуществляет прямое отображение адресов данных, располагающихся во внешнем последовательном ПЗУ (2), в адресное пространство микропроцессорного ядра (3) с использованием шины данных (8), шины адреса (9) и шины управления (10). При этом в момент готовности к работе внешнего последовательного ПЗУ (2) с СнК снимают сигнал сброса, производят автоматическую инициализацию одного или нескольких регистров управления контроллера (7) внешнего последовательного ПЗУ (2) с использованием конечного автомата устройства (1 ) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ (2), содержащем данные (например, начальный код загрузки в наилучшем варианте изобретения), в адресное пространство микропроцессорного ядра и ожидают от микропроцессорного ядра (3) поступления запросов на чтение, а при получении запроса на чтение и адреса от микропроцессорного ядра (3) по шине управления (10) и по шине адреса (9), соответственно, с использованием конечного автомата устройства (1) производят соответствующую запись в регистр данных (14) и, быть может, в регистр управления (13) контроллера (7) внешнего последовательного ПЗУ (2), после этого с использованием конечного автомата (6) устройства (1) выполняют чтение регистра данных (14) контроллера (7) внешнего последовательного ПЗУ (2) до тех пор, пока полностью не считают слово данных, которое затем передают в микропроцессорное ядро (3) по шине данных (8) устройства (1) для использования в микропроцессорном ядре. Чтение-передача данных могут осуществляться в течение всего времени работы компьютерной системы. При этом предполагают, что основная часть обращений во внешнее последовательное ПЗУ (2) со стороны микропроцессорного ядра (3) происходит во время загрузки.
Предполагается, что СнК выводится из состояния сброса в тот момент, когда внешнего последовательное ПЗУ (2) (например, Serial Flash) уже готово к работе. При этом микросхема Flash памяти готова к работе не сразу после подачи на нее питания, а по прошествии некоторого времени, описанного в спецификации на эту микросхему. Под состоянием сброса понимается состояние микросхемы при активном уровне сигнала сброса - сигнала Reset. Соответственно, вывод системы из состояния сброса - это перевод сигнала сброса в неактивное состояние.
После снятия сигнала сброса конечный автомат (6) устройства (1) производит автоматическую инициализацию контроллера (7) внешнего последовательного ПЗУ (2) (например, SPI-контроллера). Под инициализацией контроллера внешнего последовательного ПЗУ подразумевается инициализация его регистра управления (13). При этом возможны реализации, при которых контроллер внешнего последовательного ПЗУ содержит не один, а несколько регистров управления. В этом случае конечный автомат (6) устройства (1) должен произвести автоматическую инициализацию всех регистров управления контроллера (7) внешнего последовательного ПЗУ (2). По окончании инициализации конечный автомат (6) устройства (1) ожидает запросов от микропроцессорного ядра (3) на чтение внешнего последовательного ПЗУ (2) по адресам, отображаемым в адресное пространство микропроцессорного ядра (3). При получении от микропроцессорного ядра запроса на чтение (запрос на чтение определяется по состоянию сигналов шины управления (10) и сопровождается получением адреса соответственно по шине адреса (9)) конечный автомат (6) устройства (1) производит запись в регистр (14) данных контроллера (7) внешнего последовательного последовательного ПЗУ (2) команды чтения ПЗУ (2), а также адреса, по которому производится чтение ПЗУ (2). Возможны также такие реализации контроллера (7) внешнего последовательного ПЗУ, при которых конечному автомату (6) устройства (1) необходимо также производить запись в регистр управления (13) контроллера (7) внешнего последовательного ПЗУ (2) для управления передачей команды чтения и адреса во внешнее последовательное ПЗУ (2).
После этого конечный автомат (6) устройства ( 1) ожидает появления кадра данных, считанных из ПЗУ (2), в регистре (14) данных контроллера (7) внешнего последовательного ПЗУ (2). Наличие данных в регистре (14) данных может быть определено либо по результатам периодических опросов регистра (12) состояния контроллера (7) последовательного ПЗУ (2), либо по состоянию каких-либо контрольных сигналов (например, сигналов прерывания), выходящих из контроллера (7) последовательного ПЗУ (2).
После того, как кадр считанных данных появляется в регистре ( 14) данных контроллера (7) последовательного ПЗУ, конечный автомат (6) устройства (1) производит считывание этих данных и проверяет, полностью ли было считано запрашиваемое слово данных. Если слово данных было считано не полностью, конечный автомат (6) устройства (1) ожидает появления в регистре (14) данных контроллера (7) внешнего последовательного ПЗУ (2) следующего кадра данных.
После того, как запрашиваемое слово данных полностью считано из внешнего последовательного ПЗУ (2) и сформировано в регистре (4) считанных данных устройства (1), это слово данных передается в микропроцессорное ядро (3) по шине данных (8). При этом передача слова данных может сопровождаться изменением состояния сигналов шины управления (10).
После того, как слово данных передано микропроцессорному ядру, конечный автомат (6) устройства (1) переходит в состояние ожидания следующего запроса на чтение. Для реализации описанного способа загрузки в качестве внешнего последовательного ПЗУ (2) может быть использована SPI Flash память, а в качестве контроллера (7) внешнего последовательного ПЗУ (2) - контроллер SPI, а в качестве последовательного интерфейса к внешнему последовательному ПЗУ (2) используют SPI интерфейс. В этом случае ПЗУ (2) необходимо иметь всего лишь три порта для приема и передачи данных по проводам шины (15):
- вход (SC - Serial Clock) для тактирования передаваемых или принимаемых данных;
- вход (SI - Serial Input) для передачи данных от контроллера (7) к микросхеме ПЗУ (2), по этой линии побитно передают адрес, данные для записи, и коды команд управления микросхемой ПЗУ
(2);
- выход (SO - Serial Output) для передачи данных от ПЗУ (2) к контроллеру (7), по этой линии побитно передают читаемые данные, а также информацию о состоянии ПЗУ (2).
Управление микросхемой внешнего последовательного ПЗУ (2) производится контроллером (7) внешнего последовательного ПЗУ (2) посредством набора команд этого ПЗУ. Контроллер (7) последовательного ПЗУ (2) содержит набор вспомогательных регистров, среди которых можно выделить регистр данных (14), регистр управления (13) и регистр состояния (12). При этом возможны реализации, при которых контроллер (7) внешнего последовательного ПЗУ (2) содержит несколько регистров управления и состояния, а также отдельно регистры считанных и записываемых данных. В упрощённом виде, для считывания данных из внешнего последовательного ПЗУ (2) требуется выполнить следующую последовательность операций:
- инициализация регистра управления (13);
- запись команды чтения в регистр данных (14);
- запись адреса данных, располагающихся в ПЗУ, в регистр данных
(14);
- периодический опрос регистра состояния (12), пока не станет активным признак завершения цикла чтения кадра данных из последовательного ПЗУ (2);
- считывание данных из регистра данных (14).
Конечный автомат (6) устройства (1) в частном случае исполнения может быть представлен в виде двух автоматов - основного и вспомогательного, при этом вспомогательный автомат будет предназначен исключительно для взаимодействия с микропроцессорным ядром (3) по выбранному протоколу и управляется основным автоматом.
Фактически можно считать, что реализуется способ передачи данных в описанной выше компьютерной системе, включающей в себя систему на кристалле и внешнее последовательное ПЗУ, при этом система на кристалле включает в себя микропроцессорное ядро, контроллер внешнего последовательного ПЗУ для параллельной передачи слов данных, считанных из последовательного ПЗУ, и устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра с обеспечением возможности осуществления обмена данными между ним и процессорным ядром путем использования внутрисистемного интерфейса системы на кристалле, содержащего набор шин, включающий в себя, по меньшей мере, шину данных, шину адреса и шину управления, а названное устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра содержит регистр считанных данных, регистр адреса и конечный автомат устройства прямого отображения адресов, с возможностью осуществления прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра, преобразования запросов на чтение со стороны микропроцессорного ядра в последовательность обращений к контроллеру внешнего последовательного ПЗУ, и передачи по шине данных последовательности слов данных, считанных из внешнего последовательного ПЗУ, в микропроцессорное ядро. При подключении системы на кристалле в момент готовности к работе внешнего последовательного ПЗУ с системы на кристалле снимают сигнал сброса, производится автоматическая инициализация, по меньшей мере, одного регистра управления контроллера внешнего последовательного ПЗУ с использованием конечного автомата устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра, при этом ожидают от микропроцессорного ядра поступления запросов на чтение данных. При получении запроса на чтение очередного слова данных и его адреса от микропроцессорного ядра по шине управления и по шине адреса, соответственно, с использованием конечного автомата устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра производят соответствующие записи в регистр данных контроллера последовательного ПЗУ. После этого с использованием конечного автомата устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра выполняют чтение регистра состояния контроллера последовательного ПЗУ до тех пор, пока в регистре данных контроллера последовательного ПЗУ не появится очередной кадр данных, считанный из внешнего последовательного ПЗУ. Затем производят чтение регистра данных контроллера последовательного ПЗУ, повторяя последние две операции чтения регистра статуса и чтения регистра данных до тех пор, пока полностью не считают запрашиваемое слово данных, которое затем передают в микропроцессорное ядро по шине данных устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра для использования в микропроцессорном ядре, до момента окончания получения запросов на чтение данных из ПЗУ от микропроцессорного ядра. При реализации способа в качестве последовательного ПЗУ можно использовать микросхему Flash памяти с последовательным интерфейсом, например, с SPI интерфейсом, а в качестве контроллера (7) использовать SPI контроллер. Реализация описанного способа передачи данных может использоваться тогда, когда в качестве данных из внешнего последовательного ПЗУ считывают инструкции начального кода загрузки (в наилучшем варианте осуществления изобретения), а также после окончания передачи инструкций начального кода загрузки компьютерной системы с продолжением использования внешнего последовательного ПЗУ в качестве источника данных. При осуществлении способа сигнал сброса снимают с компьютерной системы в тот момент, когда внешнее последовательное ПЗУ уже готово к работе, при этом микропроцессор обращается к данным во внешнем последовательном ПЗУ по заранее известному для используемой архитектуры микропроцессора адресу. При получении запроса на чтение и адреса от микропроцессорного ядра по шине управления и по шине адреса, соответственно, с использованием конечного автомата устройства прямого отображения адресов производят соответствующую запись также, по крайней мере, в один регистр управления контроллера внешнего последовательного ПЗУ. Для определения наличия кадра данных, считанного из последовательного ПЗУ, в регистре данных контроллера внешнего последовательного ПЗУ используют контрольные сигналы прерываний контроллера внешнего последовательного ПЗУ.
Осуществление описанной компьютерной системы и способа передачи данных (в т.ч. загрузки) с использованием устройства (1) прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра обеспечит следующие преимущества:
- исключение необходимости наличия в СнК внутренних блоков памяти - начального микроПЗУ в контроллере (7) внешнего последовательного ПЗУ (2) и внутреннего ОЗУ для загрузки;
- использование последовательного интерфейса (например, SPI) между СнК и микросхемой внешнего последовательного ПЗУ (2) (например, микросхемой Flash памяти), что уменьшает количество выводов СнК;
- возможность использования широкого спектра микросхем ПЗУ (2) (в частности, Flash памяти) за счет малого количества требований к данным микросхемам.
- упрощение программного доступа к данным в ПЗУ (2) за счет прямого отображения ПЗУ в адресное пространство микропроцессора и исключения, таким образом, необходимости подачи специальных команд для чтения ПЗУ (2).
Отсутствие известных технических решений, позволяющих обеспечить указанные выше преимущества, позволяет считать, что заявленные решения отвечают требованиям патентоспособности.

Claims

ФОРМУЛА
1. Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра, характеризующееся тем, что
включает в себя регистр считанных данных, регистр адреса и конечный автомат устройства прямого отображения адресов, с возможностью
осуществления прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра,
преобразования запросов на чтение со стороны микропроцессорного ядра в последовательность обращений к контроллеру внешнего последовательного ПЗУ,
и передачи по шине данных последовательности слов данных, считанных из внешнего последовательного ПЗУ, в микропроцессорное ядро.
2. Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра по п.1, отличающееся тем, что при его работе в качестве внешнего последовательного ПЗУ используют микросхему Flash памяти с последовательным интерфейсом.
3. Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра по п.2, отличающееся тем,
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26) что при его работе в качестве последовательного интерфейса к внешнему последовательному ПЗУ используют SPI интерфейс, а в качестве контроллера внешнего последовательного ПЗУ используют SPI контроллер.
4. Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра по п.1-3, отличающееся тем, что в качестве данных, располагающихся во внешнем последовательном ПЗУ, используют инструкции начального кода загрузки с возможностью дальнейшего использования внешнего последовательного ПЗУ в качестве источника данных и после окончания чтения инструкций начального кода загрузки.
5. Компьютерная система, характеризующаяся тем, что включает в себя систему на кристалле и внешнее последовательное ПЗУ;
при этом система на кристалле включает в се,бя микропроцессорное ядро, контроллер внешнего последовательного ПЗУ для параллельной передачи слов данных, считанных из внешнего последовательного ПЗУ, и устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра с обеспечением возможности осуществления обмена данными между ним и процессорным ядром путем использования внутрисистемного интерфейса системы на кристалле, содержащего набор шин, включающий в себя, по меньшей мере, шину данных, шину адреса и шину управления,
при этом названное устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26) адресное пространство микропроцессорного ядра содержит регистр считанных данных, регистр адреса и конечный автомат устройства прямого отображения адресов, с возможностью осуществления прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра, преобразования запросов на чтение со стороны микропроцессорного ядра в последовательность обращений к контроллеру внешнего последовательного ПЗУ, и передачи по шине данных последовательности слов данных, считанных из внешнего последовательного ПЗУ, в микропроцессорное ядро.
6. Компьютерная система по п.5, отличающееся тем, что при работе устройства прямого отображения адресов данных в качестве внешнего последовательного ПЗУ используют микросхему Flash памяти с последовательным интерфейсом.
7. Компьютерная система п.6, отличающееся тем, что при работе устройства прямого отображения адресов данных в качестве последовательного интерфейса к внешнему последовательному ПЗУ используют SPI интерфейс, а в качестве контроллера внешнего последовательного ПЗУ используют SPI контроллер.
8. Компьютерная система п.5, отличающееся тем, что устройство прямого отображения адресов данных выполнено с возможностью отображения в адресное пространство микропроцессорного ядра адресов данных, являющихся инструкциями начального кода загрузки, и с возможностью дальнейшего использования внешнего последовательного ПЗУ в качестве источника данных и после окончания чтения инструкций начального кода загрузки.
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
9. Способ передачи данных, характеризующийся тем, что используют компьютерную систему, включающую в себя систему на кристалле и внешнее последовательное ПЗУ,
при этом система на кристалле включает в себя микропроцессорное ядро, контроллер внешнего последовательного ПЗУ для параллельной передачи слов данных, считанных из внешнего последовательного ПЗУ, и устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра с обеспечением возможности осуществления обмена данными между ним и процессорным ядром путем использования внутрисистемного интерфейса системы на кристалле, содержащего набор шин, включающий в себя, по меньшей мере, шину данных, шину адреса и шину управления,
а названное устройство прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра содержит регистр считанных данных, регистр адреса и конечный автомат устройства прямого отображения адресов, с возможностью осуществления прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра, преобразования запросов на чтение со стороны микропроцессорного ядра в последовательность обращений к контроллеру внешнего последовательного ПЗУ, и передачи по шине данных последовательности слов данных, считанных из внешнего последовательного ПЗУ, в микропроцессорное ядро,
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26) при этом при подключении системы на кристалле в момент готовности к работе внешнего последовательного ПЗУ с системы на кристалле снимают сигнал сброса,
производят автоматическую инициализацию, по меньшей мере, одного регистра управления контроллера внешнего последовательного ПЗУ с использованием конечного автомата устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра
и ожидают от микропроцессорного ядра поступления запросов на чтение данных,
а при получении запроса на чтение очередного слова данных и его адреса от микропроцессорного ядра по шине управления и по шине адреса, соответственно, с использованием конечного автомата устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра производят соответствующие записи в регистр данных контроллера внешнего последовательного ПЗУ,
после чего с использованием конечного автомата устройства прямого отображения адресов данных, располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра выполняют чтение регистра состояния контроллера внешнего последовательного ПЗУ до тех пор, пока в регистре данных контроллера внешнего последовательного ПЗУ не появится очередной кадр данных, считанный из внешнего последовательного ПЗУ,
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26) цосле чего производят чтение регистра данных контроллера внешнего последовательного ПЗУ, повторяя операции чтения регистра статуса и чтения регистра данных до тех пор, пока полностью не считают запрашиваемое слово данных,
которое затем передают в микропроцессорное ядро по шине i
данных устройства прямого отображения адресов данных,
I
располагающихся во внешнем последовательном ПЗУ, в адресное пространство микропроцессорного ядра для использования в микропроцессорном ядре, до момента окончания получения запросов на чтение данных из внешнего последовательного ПЗУ от микропроцессорного ядра.
i
10. Способ передачи данных по п. 9, отличающийся тем, что при работе устройства прямого отображения адресов данных в качестве внешнего последовательного ПЗУ используют микросхему Flash памяти с последовательным интерфейсом.
1 1. Способ передачи данных по п. 10, отличающийся тем, что при работе устройства прямого отображения адресов данных в качестве последовательного интерфейса к внешнему последовательному ПЗУ используют SPI интерфейс, а в качестве контроллера внешнего последовательного ПЗУ используют SPI контроллер.
14. Способ передачи данных по п. 9, отличающийся тем, что в качестве данных из внешнего последовательного ПЗУ считывают инструкции начального кода загрузки.
15. Способ передачи данных по п. 14, отличающийся тем, что после окончания передачи инструкций начального кода загрузки компьютерной системы, продолжают использовать внешнее последовательное ПЗУ в качестве источника данных.
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
16. Способ передачи данных по п. 9, отличающийся тем, что сигнал сброса снимают с компьютерной системы в тот момент, когда внешнее последовательное ПЗУ уже готово к работе, при этом микропроцессор обращается к данным во внешнем последовательном ПЗУ по заранее известному для используемой архитектуры микропроцессора адресу.
17. Способ передачи данных по п. 9, отличающийся тем, что при получении запроса на чтение и адреса от микропроцессорного ядра по шине управления и по шине адреса, соответственно, с использованием конечного автомата устройства прямого отображения адресов производят соответствующую запись также, по крайней мере, в один регистр управления контроллера внешнего последовательного ПЗУ.
18. Способ передачи данных по п. 9, отличающийся тем, что для определения наличия кадра данных, считанного из внешнего последовательного ПЗУ, в регистре данных контроллера внешнего последовательного ПЗУ используют контрольные сигналы прерываний контроллера внешнего последовательного ПЗУ.
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
PCT/RU2015/000553 2014-09-01 2015-09-01 Устройство прямого отображения адресов данных WO2016036281A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EA201700119A EA039007B1 (ru) 2014-09-01 2015-09-01 Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном пзу, в адресное пространство микропроцессорного ядра, компьютерная система и способ передачи данных

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2014135505 2014-09-01
RU2014135505/08A RU2579942C2 (ru) 2014-09-01 2014-09-01 Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном пзу, в адресное пространство микропроцессорного ядра, компьютерная система и способ передачи данных

Publications (1)

Publication Number Publication Date
WO2016036281A1 true WO2016036281A1 (ru) 2016-03-10

Family

ID=53284987

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2015/000553 WO2016036281A1 (ru) 2014-09-01 2015-09-01 Устройство прямого отображения адресов данных

Country Status (3)

Country Link
EA (1) EA039007B1 (ru)
RU (1) RU2579942C2 (ru)
WO (1) WO2016036281A1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858457A (zh) * 2020-07-15 2020-10-30 苏州浪潮智能科技有限公司 一种数据处理方法、装置、系统和fpga
CN112817902A (zh) * 2021-02-05 2021-05-18 中国电子科技集团公司第五十八研究所 互联裸芯接口管理系统及其初始化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535360A (en) * 1994-08-31 1996-07-09 Vlsi Technology, Inc. Digital computer system having an improved direct-mapped cache controller (with flag modification) for a CPU with address pipelining and method therefor
US20060174100A1 (en) * 2005-01-31 2006-08-03 Samsung Electronics Co., Ltd System and method of booting an operating system for a computer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546546A (en) * 1994-05-20 1996-08-13 Intel Corporation Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge
US6601167B1 (en) * 2000-01-14 2003-07-29 Advanced Micro Devices, Inc. Computer system initialization with boot program stored in sequential access memory, controlled by a boot loader to control and execute the boot program
JP2004334486A (ja) * 2003-05-07 2004-11-25 Internatl Business Mach Corp <Ibm> ブートコードを用いた起動システム、及び起動方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535360A (en) * 1994-08-31 1996-07-09 Vlsi Technology, Inc. Digital computer system having an improved direct-mapped cache controller (with flag modification) for a CPU with address pipelining and method therefor
US20060174100A1 (en) * 2005-01-31 2006-08-03 Samsung Electronics Co., Ltd System and method of booting an operating system for a computer

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858457A (zh) * 2020-07-15 2020-10-30 苏州浪潮智能科技有限公司 一种数据处理方法、装置、系统和fpga
CN111858457B (zh) * 2020-07-15 2023-01-10 苏州浪潮智能科技有限公司 一种数据处理方法、装置、系统和fpga
CN112817902A (zh) * 2021-02-05 2021-05-18 中国电子科技集团公司第五十八研究所 互联裸芯接口管理系统及其初始化方法
CN112817902B (zh) * 2021-02-05 2022-08-02 中国电子科技集团公司第五十八研究所 互联裸芯接口管理系统及其初始化方法

Also Published As

Publication number Publication date
RU2014135505A (ru) 2015-05-27
EA201700119A1 (ru) 2017-10-31
EA039007B1 (ru) 2021-11-22
RU2579942C2 (ru) 2016-04-10

Similar Documents

Publication Publication Date Title
KR100634436B1 (ko) 멀티 칩 시스템 및 그것의 부트코드 페치 방법
KR100474622B1 (ko) 마이크로컴퓨터
MX2012005183A (es) Linea de espera de comandos para componente periferico.
US8468281B2 (en) Apparatus to improve bandwidth for circuits having multiple memory controllers
KR100958850B1 (ko) 플래시 메모리의 작동을 모니터링하기 위한 디바이스 및방법
JP2008009817A (ja) 半導体装置及びデータ転送方法
CN113127402A (zh) 一种spi访问控制方法、系统、计算设备及存储介质
JPH07160626A (ja) 短いワード長のメモリを長いワード長のマルチプレクスされたバスに接続する装置及び方法
WO2016036281A1 (ru) Устройство прямого отображения адресов данных
EP3236350B1 (en) Tigersharc series dsp start-up management chip and method
KR20110116990A (ko) 마이크로 컴퓨터
RU2579949C2 (ru) Компьютерная система
JP2010003151A (ja) データ処理装置
US8117427B2 (en) Motherboard, storage device and controller thereof, and booting method
JP4791792B2 (ja) デジタルシグナルプロセッサシステムおよびそのブート方法。
RU155208U1 (ru) Компьютерная система
KR101030385B1 (ko) 내부 메모리만을 가지는 시스템의 부팅 장치 및 방법
JP2003309564A (ja) マイクロコンピュータシステムおよびそれに使用されるトランシーバ
US8677033B2 (en) Method for initializing registers of peripherals in a microcontroller
US11841782B2 (en) Semiconductor device and debugging system
JP2005276104A (ja) マイクロコンピュータ
WO2006112968A1 (en) Apparatus to improve bandwidth for circuits having multiple memory controllers
JP4343244B2 (ja) マイクロコンピュータ
JP2006155303A (ja) 制御装置
KR101028855B1 (ko) 시리얼 플래시 컨트롤러

Legal Events

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

Ref document number: 15838889

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 201700119

Country of ref document: EA

122 Ep: pct application non-entry in european phase

Ref document number: 15838889

Country of ref document: EP

Kind code of ref document: A1