RU2290706C1 - Cache memory reading device - Google Patents

Cache memory reading device Download PDF

Info

Publication number
RU2290706C1
RU2290706C1 RU2005114570/09A RU2005114570A RU2290706C1 RU 2290706 C1 RU2290706 C1 RU 2290706C1 RU 2005114570/09 A RU2005114570/09 A RU 2005114570/09A RU 2005114570 A RU2005114570 A RU 2005114570A RU 2290706 C1 RU2290706 C1 RU 2290706C1
Authority
RU
Russia
Prior art keywords
output
memory
input
address
unit
Prior art date
Application number
RU2005114570/09A
Other languages
Russian (ru)
Other versions
RU2005114570A (en
Inventor
Павел Николаевич Осипенко (RU)
Павел Николаевич Осипенко
Евгений Авенирович Новожилов (RU)
Евгений Авенирович Новожилов
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 RU2005114570/09A priority Critical patent/RU2290706C1/en
Publication of RU2005114570A publication Critical patent/RU2005114570A/en
Application granted granted Critical
Publication of RU2290706C1 publication Critical patent/RU2290706C1/en

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

FIELD: computer engineering; data processing devices; reduced instruction set microprocessor systems.
SUBSTANCE: cache memory reading device contains address forming unit, pipeline latches 1A, 1B, 2A, 2B, address conversion unit, data memory, tags memory, comparison unit, control unit with two outputs, and timing pulse generator with two outputs.
EFFECT: increased performance of pipeline microprocessor system with reduced instruction set, reduced time of cache hit flag generation, and reduced power consumption.
4 dwg

Description

Изобретение относится к вычислительной технике, в частности к устройствам обработки данных, и может найти применение в микропроцессорных системах с сокращенным набором команд.The invention relates to computing, in particular to data processing devices, and may find application in microprocessor systems with a reduced set of instructions.

Известно устройство чтения из кэш-памяти, например, содержащееся в микропроцессоре 79R3081 компании IDT (США). Указанное устройство включает блок формирования адреса, конвейерные регистры-защелки 1А, 1В, 2В, блок преобразования адреса, память данных, память тэгов, блок сравнения, блок управления и генератор тактовых импульсов, причем выход блока формирования адреса подключен к входу конвейерного регистра-защелки 1А, выход которого подключен к блоку преобразования адреса, выход блока преобразования адреса подключен к входу конвейерного регистра-защелки 1В, выход которого подключен к адресным входам памяти данных и памяти тэгов и к входу блока сравнения, к другому входу которого подключен выход памяти тэгов, выход блока сравнения и выход памяти данных подключен к входу конвейерного регистра защелки 2 В, выход блока управления подключен к управляющим входам памяти данных и памяти тэгов, синхронизация схемы задается генератором тактовых импульсов, который имеет два выхода, (см. "The IDT79R3071, IDT79R3081 RISC Controller Hardware User's Manual" Revision 2.0 April 4, 1994).A device for reading from the cache, for example, contained in the microprocessor 79R3081 company IDT (USA). The specified device includes an address generation unit, conveyor latch registers 1A, 1B, 2B, an address conversion unit, a data memory, a tag memory, a comparison unit, a control unit and a clock generator, wherein the output of the address generation unit is connected to the input of the conveyor register latch 1A whose output is connected to the address conversion unit, the output of the address conversion unit is connected to the input of the conveyor register-latch 1B, the output of which is connected to the address inputs of the data memory and tag memory and to the input of the compare a signal to the other input of which the output of the tag memory is connected, the output of the comparison unit and the output of the data memory are connected to the input of the 2 V latch conveyor register, the output of the control unit is connected to the control inputs of the data memory and tag memory, the synchronization of the circuit is set by the clock generator, which has two output, (see "The IDT79R3071, IDT79R3081 RISC Controller Hardware User's Manual" Revision 2.0 April 4, 1994).

Недостатком известного устройства является то, что на адресные входы памяти данных и памяти тэгов подается сигнал с выхода регистра защелки 1 В, таким образом оставляя промежуток времени всего в две фазы на выполнение чтения из памяти тэгов и выполнение сравнения содержимого памяти тэгов с физическим адресом, поступающим с выхода регистра защелки 1В, что не позволяет повысить быстродействие микропроцессорной системы в целом.A disadvantage of the known device is that a signal from the output of the latch register 1 V is supplied to the address inputs of the data memory and the tag memory, thus leaving a period of time of only two phases for reading from the tag memory and comparing the contents of the tag memory with the physical address received from the output of the latch register 1B, which does not allow to increase the speed of the microprocessor system as a whole.

Наиболее близким к патентуемому устройству чтения из кэш-памяти является устройство, входящее в состав 64-разрядного микропроцессора 79RC64574/64575. Устройство чтения из кэш-памяти включает блок формирования адреса, конвейерные регистры-защелки 1А, 1В, 2В, блок преобразования адреса, память данных, память тэгов, блок сравнения, блок управления и генератор тактовых импульсов с двумя выходами, причем выход блока формирования адреса подключен к входу конвейерного регистра-защелки 1А, выход которого подключен к входу блока преобразования адреса и к адресным входам памяти данных и памяти тэгов соответственно, выход блока преобразования адреса подключен к входу конвейерного регистра-защелки 1В, выход которого подключен к входу блока сравнения, к другому входу которого подключен выход памяти тэгов, выход памяти данных подключен к входу конвейерного регистра защелки 2В, к другому входу которого подключен выход блока сравнения, выход блока управления подключен к управляющим входам памяти данных и памяти тэгов, синхронизация схемы задается генератором тактовых импульсов, который имеет два выхода, один выход генератора тактовых импульсов соединен с одним из входов блока управления и входом регистра 1А, а другой выход генератора тактовых импульсов соединен с другим входом блока управления и входами регистров 1В и 2В. В данном устройстве индексация памяти данных и памяти тэгов осуществляется по виртуальному адресу, т.е. по выходу регистра 1А, который формируется на одну фазу раньше, чем физический адрес. Такое решение позволяет исключить время преобразования адреса из критического пути конвейера на данной стадии. Параметры памяти данных и памяти тэгов являются одинаковыми и временная диаграмма обращения к памяти данных и памяти тэгов также является одинаковой. Такой подход проще реализовать технически, так как память строится на однотипных ячейках. Кроме того, при единой временной диаграмме схема управления двумя типами памяти гораздо проще (см. "79RC64574/64575 User Reference Manual", Version 1.0 April 2000 http://www.idt.com/docs/79RC64574_MA_63402.pdf).Closest to the patented cache reader is a device that is part of the 64-bit microprocessor 79RC64574 / 64575. The cache reader includes an address generation unit, 1A, 1B, 2V conveyor register-latches, an address conversion unit, data memory, tag memory, a comparison unit, a control unit and a clock with two outputs, and the output of the address generation unit is connected to the input of the conveyor register-latch 1A, the output of which is connected to the input of the address conversion unit and to the address inputs of the data memory and tag memory, respectively, the output of the address conversion unit is connected to the input of the conveyor register-latch 1B, the output of which is connected to the input of the comparison unit, the output of the tags memory is connected to another input, the data memory output is connected to the input of the latch conveyor register 2B, the output of the comparison unit is connected to the other input, the output of the control unit is connected to the control inputs of the data memory and memory tags, the timing of the circuit is set by the clock generator, which has two outputs, one output of the clock generator is connected to one of the inputs of the control unit and the input of the register 1A, and the other output of the generator clock pulses connected to another input of the control unit and the inputs of the registers 1B and 2B. In this device, the indexing of data memory and tag memory is carried out by the virtual address, i.e. on the output of register 1A, which is formed one phase earlier than the physical address. This solution allows you to eliminate the address translation time from the critical path of the pipeline at this stage. The data memory and tag memory parameters are the same and the timing diagram of accessing the data memory and tag memory is also the same. This approach is easier to implement technically, since the memory is built on cells of the same type. In addition, with a single timing diagram, the control scheme for two types of memory is much simpler (see "79RC64574 / 64575 User Reference Manual", Version 1.0 April 2000 http://www.idt.com/docs/79RC64574_MA_63402.pdf).

Однако такой подход одновременного считывания имеет недостаток: поскольку, с точки зрения логики работы микропроцессора, содержимое памяти тэгов нужно иметь значительно раньше, чем содержимое памяти данных, так как содержимое тэгов используется блоком сравнения для формирования признака попадания в кэш-память. При таком подходе требования по быстродействию автоматически налагаются и на компактную и быструю память тэгов и на память данных, которые значительно больше по объему, что ведет к повышению энергопотребления и занимаемой площади и является ограничивающим фактором по быстродействию.However, this approach of simultaneous reading has a drawback: since, from the point of view of the microprocessor logic, the contents of the tags memory should be much earlier than the contents of the data memory, since the contents of the tags are used by the comparison unit to form a sign of getting into the cache memory. With this approach, performance requirements are automatically imposed on both compact and fast tag memory and data memory, which are significantly larger in volume, which leads to increased power consumption and footprint and is a limiting factor in speed.

Задачей изобретения является повышение быстродействия конвейерной системы микропроцессора с сокращенным набором команд и снижение энергопотребления.The objective of the invention is to increase the speed of the conveyor system of the microprocessor with a reduced set of instructions and reduce power consumption.

Техническим результатом является разделение циклов чтения памяти данных и памяти тэгов кэш-памяти микропроцессора, что позволяет сформировать признак попадания в кэш-память на пол-фазы быстрее, чем будет доступно содержимое памяти данных при одновременном снижении требований к быстродействию памяти данных.The technical result is the separation of the read cycles of the data memory and the memory tags of the microprocessor cache memory, which allows you to form a sign of getting into the cache memory half a phase faster than the contents of the data memory will be available while reducing the requirements for the speed of the data memory.

Указанные задача и технический результат достигаются в устройстве чтения из кэш-памяти, включающем блок формирования адреса, конвейерные регистры-защелки 1А, 1В, 2А, 2В, блок преобразования адреса, память данных, память тэгов, блок сравнения, блок управления и генератор тактовых импульсов с двумя выходами, причем выход блока формирования адреса подключен к входу конвейерного регистра-защелки 1А, выход которого подключен к входу блока преобразования адреса и к адресным входам памяти данных и памяти тэгов соответственно, выход блока преобразования адреса подключен к входу конвейерного регистра-защелки 1В, выход которого подключен к входу блока сравнения, к другому входу которого подключен выход памяти тэгов, выход памяти данных подключен к входу конвейерного регистра защелки 2В, один выход генератора тактовых импульсов соединен с одним из входов блока управления и входами регистров 1А и 2А, а другой выход генератора тактовых импульсов соединен с другим входом блока управления и входами регистров 1В и 2В, блок управления имеет два выхода, один из которых подключен к входу памяти данных, а другой к входу памяти тэгов, а выход блока сравнения подключен к входу конвейерного регистра-защелки 2А.The aforementioned task and technical result are achieved in a reader from the cache memory, including an address generation unit, conveyor register latches 1A, 1B, 2A, 2B, an address conversion unit, data memory, tag memory, a comparison unit, a control unit and a clock with two outputs, and the output of the address generation unit is connected to the input of the conveyor register-latch 1A, the output of which is connected to the input of the address conversion unit and to the address inputs of the data memory and tag memory, respectively, the output of the conversion unit address is connected to the input of the conveyor register-latch 1B, the output of which is connected to the input of the comparison unit, the output of the tags memory is connected to the other input, the output of the data memory is connected to the input of the conveyor register of the latch 2B, one output of the clock generator is connected to one of the inputs of the block control and inputs of registers 1A and 2A, and the other output of the clock generator is connected to another input of the control unit and the inputs of registers 1B and 2B, the control unit has two outputs, one of which is connected to the memory input data, and the other to the tag memory input, and the output of the comparison unit is connected to the input of the conveyor register-latch 2A.

Ускоренное формирование признака попадания в кэш-память позволяет сократить время формирования сигнала остановки конвейера, что позволяет увеличить тактовую частоту всего конвейера. При этом снижение требования по быстродействию к памяти данных позволит снизить энергопотребление и занимаемую площадь данного блока.The accelerated formation of the flag of getting into the cache memory allows to reduce the time of formation of the stop signal of the pipeline, which allows to increase the clock frequency of the entire pipeline. At the same time, reducing the speed requirements for data memory will reduce power consumption and the footprint of this unit.

Для выполнения заявленных задачи и технического результата устройство чтения из кэш-памяти обеспечивает формирование сигнала попадания в кэш и запись его в конвейерный регистр защелку по второму сигналу phi_A и считывание содержимого памяти данных и запись его в конвейерный регистр защелку по второму сигналу phi_B с момента начала формирования адреса.To accomplish the stated tasks and technical result, the cache reader provides the formation of a cache hit signal and writes it to the pipeline register latch by the second signal phi_A and reads the contents of the data memory and writes it to the pipeline register latch by the second signal phi_B from the moment of formation addresses.

На фиг.1 изображена блок-схема патентуемого устройства чтения кэш-памяти.Figure 1 shows a block diagram of a patented cache reader.

На фиг.2 - схема блока преобразования адреса.Figure 2 - block diagram of the address translation.

На фиг.3 - форма тактовых импульсов.Figure 3 - the shape of the clock pulses.

На фиг.4 - временная диаграмма работы считывания кэш-памяти патентуемым устройством.Figure 4 is a timing diagram of the operation of reading cache memory by a patented device.

Устройство чтения из кэш-памяти содержит следующие узлы:A cache reader contains the following nodes:

1 - блок формирования адреса,1 - block forming the address,

2 - конвейерный регистр-защелка 1А,2 - conveyor register latch 1A,

3 - блок преобразования адреса,3 - block address translation,

4 - конвейерный регистр-защелка 1 В,4 - conveyor register latch 1 V,

5 - блок сравнения,5 - block comparison

6 - конвейерный регистр-защелка 2А,6 - conveyor register latch 2A,

7 - память тэгов,7 - tag memory,

8 - генератор тактовых импульсов,8 is a clock generator,

9 - блок управления,9 - control unit,

10 - память данных,10 - data memory,

11 - конвейерный регистр-защелка 2 В,11 - conveyor register latch 2 V,

причем выход 12 блока формирования адреса 1 подключен к входу 13 конвейерного регистра-защелки 1А позиция 2, выход 14 которого подключен к входу 15 блока преобразования адреса 3 и к адресным входам 16 и 17 памяти данных 10 и памяти тэгов 7 соответственно, выход 18 блока преобразования адреса 3 подключен к входу 19 конвейерного регистра-защелки 1 В позиция 4, выход 20 которого подключен к входу 21 блока сравнения 5, к другому входу 22 которого подключен выход 23 памяти тэгов 7, выход 24 памяти данных 10 подключен к входу 25 конвейерного регистра защелки 2 В позиция 11, синхронизация схемы задается генератором тактовых импульсов 8, который имеет два выхода 26 и 27, соединенных с входами 28 и 29, соответственно, блока управления 9, а также с входами 30 и 31 регистров 1А и 2А позиции 2 и 6, и с входами 32 и 33 регистров 1В и 2В позиции 4 и 11, соответственно, управляющие входы 34 и 35 памяти данных 10 и памяти тэгов 7 подключены к раздельным выходам 36 и 37 блока управления 9 соответственно, а выход 38 блока сравнения 5 подключен к входу 39 конвейерного регистра-защелки 2А позиция 6.moreover, the output 12 of the address forming unit 1 is connected to the input 13 of the conveyor register-latch 1A position 2, the output 14 of which is connected to the input 15 of the address translation unit 3 and to the address inputs 16 and 17 of the data memory 10 and the tag memory 7, respectively, the output 18 of the conversion unit address 3 is connected to the input 19 of the conveyor register-latch 1 To position 4, the output 20 of which is connected to the input 21 of the comparison unit 5, the output 23 of the tag memory 7 is connected to the other input 22, the output 24 of the data memory 10 is connected to the input 25 of the latch conveyor 2 to position 11 , the synchronization of the circuit is set by the clock generator 8, which has two outputs 26 and 27 connected to the inputs 28 and 29, respectively, of the control unit 9, as well as to the inputs 30 and 31 of registers 1A and 2A of position 2 and 6, and with inputs 32 and 33 registers 1B and 2B of positions 4 and 11, respectively, control inputs 34 and 35 of data memory 10 and tag memory 7 are connected to separate outputs 36 and 37 of control unit 9, respectively, and output 38 of comparison unit 5 is connected to input 39 of the conveyor register latches 2A position 6.

Блок формирования адреса 1, предназначен для формирования виртуального адреса, по которому необходимо считать содержимое кэш-памяти, и состоит из 32-разрядного счетчика. Выходом блока формирования адреса является 32-разрядный адрес из виртуального адресного пространства микропроцессора.The address generation unit 1 is designed to generate a virtual address by which it is necessary to read the contents of the cache memory, and consists of a 32-bit counter. The output of the address generation unit is a 32-bit address from the virtual address space of the microprocessor.

Конвейерный регистр-защелка 2 предназначен для сохранения 32-разрядного виртуального адреса в стабильном состоянии в течение фазы 1В путем защелкивания входного сигнала по заднему фронту сигнала phi_A в такте 1, и состоит из 32-разрядного регистра типа latch.The conveyor register-latch 2 is designed to keep the 32-bit virtual address in a stable state during phase 1B by latching the input signal on the trailing edge of the phi_A signal in cycle 1, and consists of a 32-bit register of the latch type.

Блок преобразования адреса 3 предназначен для формирования 32-разрядного физического адреса на основе 32-х разрядного виртуального адреса. Блок состоит из полностью ассоциативной памяти на 64 строки. Схема и принцип работы блока преобразования адреса описана в J.Hennesy and D.Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publisher, Inc., San Francisco, CA, Second edition, 2001, глава 5.The address translation unit 3 is intended for generating a 32-bit physical address based on a 32-bit virtual address. The block consists of 64-line fully associative memory. The scheme and principle of operation of the address translation unit are described in J. Hennesy and D. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publisher, Inc., San Francisco, CA, Second edition, 2001, chapter 5.

Выходом блока преобразования адреса является 32-разрядный физический адрес.The output of the address translation unit is a 32-bit physical address.

Конвейерный регистр-защелка 4 предназначен для сохранения 32-разрядного физического адреса в стабильном состоянии в течение фазы 2А, путем защелкивания входного сигнала по заднему фронту сигнала phi_B в такте 1, и состоит из 32-разрядного регистра типа latch.The conveyor register-latch 4 is designed to keep the 32-bit physical address in a stable state during phase 2A by latching the input signal on the trailing edge of the signal phi_B in step 1, and consists of a 32-bit register of the latch type.

Блок сравнения 5 предназначен для сравнения старших 20-ти разрядов физического адреса с содержимым памяти тэгов и состоит из 20-разрядного компаратора. В случае совпадения блок сравнения формирует активный уровень сигнала TagEq.Comparison block 5 is designed to compare the upper 20 bits of the physical address with the contents of the tag memory and consists of a 20-bit comparator. In case of coincidence, the comparison unit generates an active TagEq signal level.

Конвейерный регистр защелка 6 предназначен для сохранения сигнала совпадения адреса TagEq в стабильном состоянии в течения фазы 2 В, путем защелкивания входного сигнала по заднему фронту сигнала phi_A в такте 2, и состоит из 1-разрядного регистра типа latch.The conveyor register latch 6 is designed to keep the TagEq address match signal in a stable state during a 2 V phase by latching the input signal along the trailing edge of the phi_A signal in cycle 2, and consists of a 1-bit latch register.

Память тэгов 7 представляет собой стандартную асинхронную память емкостью 4 КБ и с шириной слова в 20 разрядов. Память предназначена для хранения тэгов. В данной схеме к памяти предъявляются повышенные требования по быстродействию. Выходом памяти тэгов является 20-разрядная шина Tag.Tag memory 7 is a standard asynchronous memory with a capacity of 4 KB and a word width of 20 bits. The memory is designed to store tags. In this scheme, increased performance requirements are placed on the memory. The tag memory output is a 20-bit Tag bus.

Генератор тактовых импульсов 8 предназначен для формирования тактовых сигналов phi_А и phi_B. Форма данных сигналов показана на фиг.3. Необходимо отметить требование наличия временного интервала между активными высокими уровнями сигналов phi_A и phi_В не менее 1 нс.The clock generator 8 is designed to generate clock signals phi_A and phi_B. The waveform of these signals is shown in FIG. It should be noted that the time interval between active high levels of phi_A and phi_B signals is at least 1 ns.

Блок управления 9 предназначен для формирования управляющих сигналов считыванию памяти тэгов и памяти данных. Алгоритм формирования справляющих сигналов обеспечивает считывание содержимого тэгов раньше, чем содержимого памяти данных. Блок построен на базе программируемой логической матрицы (PLM). Выходом блока являются сигналы чтения памяти данных D_Rd и чтения памяти тэгов Tag_Rd.The control unit 9 is designed to generate control signals to read the tag memory and data memory. The algorithm for generating reference signals provides the reading of the contents of tags earlier than the contents of the data memory. The block is built on the basis of a programmable logic matrix (PLM). The output of the block is the signals for reading the data memory D_Rd and reading the memory of the Tag_Rd tags.

Память данных 10 представляет собой стандартную асинхронную память емкостью 4 КБ и с шириной слова в 32 разряда. Память предназначена для хранения данных. В данной схеме к памяти не предъявляются требования по быстродействию, что позволяет снизить энергопотребление и занимаемую площадь. Выходом памяти тэгов является 32-разрядная шина данных Data.Data memory 10 is a standard 4 KB asynchronous memory with a 32-bit word width. The memory is intended for data storage. In this scheme, the memory does not have performance requirements, which reduces power consumption and footprint. The tag memory output is a 32-bit Data bus.

Конвейерный регистр-защелка 11 предназначен для сохранения шины данных Data в стабильном состоянии в течение фазы 3А, путем защелкивания входного сигнала по заднему фронту сигнала phi_В в такте 2, и состоит из 32-разрядного регистра типа latch.The conveyor register-latch 11 is designed to keep the Data bus in a stable state during phase 3A by latching the input signal along the trailing edge of the signal phi_B in step 2, and consists of a 32-bit register of the latch type.

Устройство считывания из кэш-памяти работает следующим образом. В течение фазы 1А блок формирования адреса 1 формирует адрес на основе предыдущего значения путем увеличения его на 4. Выход 12 блока формирования адреса 1 поступает на вход 13 регистра защелки 1А, позиция 2, который обеспечивает стабильность виртуального адреса VA в течение фазы 1В. Далее старшие разряды [31:12] виртуального адреса VA поступают на вход 15 блока преобразования адреса 3, где происходит их преобразование в физические адреса РА в соответствии со схемой, изображенной на фиг.2. Младшие 12 разрядов [11:0] виртуального адреса VA подаются на адресные входы 16 и 17 памяти данных 10 и памяти тэгов 7 соответственно. В течение фазы 1 В происходит преобразование виртуального адреса VA в физический РА в блоке преобразования адреса 3, а также начинается цикл чтения памяти тэгов 7 и памяти данных 10. К концу фазы 1 В на выходе 18 блока преобразования адреса 3 формируется физический адрес, который поступает на вход 19 и защелкивается в регистре-защелке 1В, позиция 4, который обеспечивает стабильность физического адреса в течение фазы 2А. В этой же фазе блок управления 9 на выходе 37 формирует активное состояние сигнала Tag_Rd, который разрешает выдачу содержимого памяти тэгов 7 на 20-разрядную шину Tag, которая соединяет выход 23 памяти тэгов с входом 22 блока сравнения 5, на другой вход 21 которого поступают старшие разряды физического адреса РА. Блок сравнения 5 формирует активный сигнал Tag_Eq, в случае, если содержимое памяти тэгов 7, считанное в данном цикле, совпадает со старшими разрядами физического адреса. Сигнал Tag_Eq должен поступить на вход 39 регистра защелки 2А, позиция 6 до окончания фазы 1А с тем, чтобы быть доступным для дальнейшей обработки в фазе 2В. Также в течение фазы 2В блок управления 9 формирует сигнал D_Rd, который разрешает выдачу содержимого памяти данных 10 на 32-разрядную шину Data, которая соединяет выход 24 памяти данных с входом 25 регистра-защелки 2В, позиция 11, к моменту окончания фазы 2В с тем, чтобы быть доступной для дальнейшей обработки в фазе 3А.The reader from the cache works as follows. During phase 1A, the address generating unit 1 generates an address based on the previous value by increasing it by 4. The output 12 of the address generating unit 1 goes to input 13 of the latch register 1A, position 2, which ensures the stability of the virtual address VA during phase 1B. Next, the senior bits [31:12] of the virtual address VA are input 15 of the address translation unit 3, where they are converted into physical addresses of the RA in accordance with the circuit depicted in figure 2. The lower 12 bits [11: 0] of the virtual address VA are supplied to the address inputs 16 and 17 of the data memory 10 and the tag memory 7, respectively. During phase 1 B, the virtual address of VA is converted to a physical RA in address translation unit 3, and the reading cycle of tag memory 7 and data memory 10 starts. By the end of phase 1 B, a physical address is generated at the output 18 of address 3 translation unit, which arrives to input 19 and latches into latch register 1B, position 4, which ensures the stability of the physical address during phase 2A. In the same phase, the control unit 9 at the output 37 generates an active state of the Tag_Rd signal, which allows the contents of the tag memory 7 to be transmitted to the 20-bit Tag bus, which connects the output 23 of the tag memory to the input 22 of the comparison unit 5, to the other input 21 of which the older bits of the physical address of the RA. The comparison unit 5 generates an active signal Tag_Eq, if the contents of the tag memory 7, read in this cycle, coincides with the upper bits of the physical address. The signal Tag_Eq must be received at the input 39 of the register of the latch 2A, position 6 until the end of phase 1A in order to be available for further processing in phase 2B. Also, during phase 2B, the control unit 9 generates a signal D_Rd, which allows the contents of the data memory 10 to be output to the 32-bit Data bus, which connects the output 24 of the data memory to the input 25 of the register-latch 2B, position 11, by the time the phase 2B ends to be available for further processing in phase 3A.

Claims (1)

Устройство чтения из кэш-памяти, содержащее блок формирования адреса, конвейерные регистры-защелки 1А, 1В, 2А, 2В, блок преобразования адреса, память данных, память тэгов, блок сравнения, блок управления и генератор тактовых импульсов с двумя выходами, причем выход блока формирования адреса подключен к входу конвейерного регистра-защелки 1А, выход которого подключен к входу блока преобразования адреса и к адресным входам памяти данных и памяти тэгов соответственно, выход блока преобразования адреса подключен к входу конвейерного регистра-защелки 1В, выход которого подключен к входу блока сравнения, к другому входу которого подключен выход памяти тэгов, выход памяти данных подключен к входу конвейерного регистра защелки 2В, один выход генератора тактовых импульсов соединен с одним из входов блока управления и входами регистров 1А и 2А, а другой выход генератора тактовых импульсов соединен с другим входом блока управления и входами регистров 1В и 2В, отличающееся тем, что блок управления имеет два выхода, один из которых подключен к входу памяти данных, а другой к входу памяти тэгов, а выход блока сравнения подключен к входу конвейерного регистра-защелки 2А.A cache reader containing an address generation unit, conveyor latch registers 1A, 1B, 2A, 2B, an address conversion unit, a data memory, a tag memory, a comparison unit, a control unit and a clock with two outputs, the output of the unit the address generation is connected to the input of the conveyor register-latch 1A, the output of which is connected to the input of the address conversion unit and to the address inputs of the data memory and tag memory, respectively, the output of the address conversion unit is connected to the input of the conveyor register-z 1B slots, the output of which is connected to the input of the comparison unit, the tag memory output is connected to the other input, the data memory output is connected to the input of the conveyor register of the latch 2B, one output of the clock generator is connected to one of the inputs of the control unit and the inputs of registers 1A and 2A, and the other output of the clock generator is connected to the other input of the control unit and the inputs of the registers 1V and 2B, characterized in that the control unit has two outputs, one of which is connected to the input of the data memory, and the other to the input of the tag memory s, and the output of the comparison unit is connected to the input of the conveyor register-latch 2A.
RU2005114570/09A 2005-05-14 2005-05-14 Cache memory reading device RU2290706C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2005114570/09A RU2290706C1 (en) 2005-05-14 2005-05-14 Cache memory reading device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2005114570/09A RU2290706C1 (en) 2005-05-14 2005-05-14 Cache memory reading device

Publications (2)

Publication Number Publication Date
RU2005114570A RU2005114570A (en) 2006-11-20
RU2290706C1 true RU2290706C1 (en) 2006-12-27

Family

ID=37501806

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2005114570/09A RU2290706C1 (en) 2005-05-14 2005-05-14 Cache memory reading device

Country Status (1)

Country Link
RU (1) RU2290706C1 (en)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
79RC64574/64575 User Reference Manual. Version 1.0, April, 2000 http://www.idt.com/docs/79RC64574 - MA - 63402.pdf. *
The IDT79R3071, IDT79R3081 RISC. Controller Hardware User's Manual. Revision 2.0, April, № 4, 1994. ГУК М. Аппаратные средства IBM PC. - С-Пб.: Питер Ком, 1999, с.214-218, 320-327. *

Also Published As

Publication number Publication date
RU2005114570A (en) 2006-11-20

Similar Documents

Publication Publication Date Title
US20100306426A1 (en) Fifo buffer
US6301322B1 (en) Balanced dual-edge triggered data bit shifting circuit and method
US20070201298A1 (en) Bit line precharge in embedded memory
CN107577623A (en) Cross clock domain asynchronous fifo and data processing method
US8773928B2 (en) Command latency systems and methods
KR20180005081A (en) Memory device having command window generator
SU1541619A1 (en) Device for shaping address
JP2006139879A (en) Semiconductor memory
RU2290706C1 (en) Cache memory reading device
US6353574B1 (en) Semiconductor memory device having pipe register operating at high speed
KR100598010B1 (en) Clock divider, system including clock divider, and method for dividing clock and for reading and writing using the clock dividing
JPH0679289B2 (en) Microcontroller unit
CN103377029A (en) Parametric universal FIFO control method
US20160253286A1 (en) Program profiler circuit, processor, and program counting method
JP2004295819A (en) Data buffer device
JPH0795269B2 (en) Instruction code decoding device
Czerwinski et al. FPGA implementation of programmable logic controller compliant with EN 61131-3
JPH0736166B2 (en) Data transfer method
JP3305975B2 (en) Address counter circuit and semiconductor memory device
RU2291476C2 (en) Information input device
JP2009145957A (en) State machine and semiconductor integrated circuit using it
CN118051463A (en) Asynchronous controller for processing unit
JPH05225122A (en) Burst transfer system of dma
Shengbiao et al. CAM design based on virtex family devices
JP2001100991A (en) Digital signal processor

Legal Events

Date Code Title Description
PD4A Correction of name of patent owner