CN1046040C - Memory direct access structure matching the number of bus bits - Google Patents
Memory direct access structure matching the number of bus bits Download PDFInfo
- Publication number
- CN1046040C CN1046040C CN94118982A CN94118982A CN1046040C CN 1046040 C CN1046040 C CN 1046040C CN 94118982 A CN94118982 A CN 94118982A CN 94118982 A CN94118982 A CN 94118982A CN 1046040 C CN1046040 C CN 1046040C
- Authority
- CN
- China
- Prior art keywords
- basic
- data
- address
- bus
- direct access
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Lifetime
Links
- 230000009471 action Effects 0.000 claims description 17
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 2
- 230000008878 coupling Effects 0.000 claims description 2
- 238000010168 coupling process Methods 0.000 claims description 2
- 238000005859 coupling reaction Methods 0.000 claims description 2
- 238000012790 confirmation Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
Abstract
Description
本发明有关于微电脑(microcomputer)系统的存贮器直接存贮结构,特别是有关于一种与总线位数相匹配的存贮器直接存取(DMA,Direct Memory Access)结构。The present invention relates to a memory direct storage structure of a microcomputer (microcomputer) system, in particular to a memory direct access (DMA, Direct Memory Access) structure matching the bus number.
在微电脑系统中,存贮器直接存取(DMA)是一重要结构。它是于瞬间接管原为微处理器(microprocessor)所控制的数据与地址总线,从而使外围设备,如磁盘机等输入/输出装置,能够经总线直接与存贮器装置进行数据交换传输,提高数据流通效率。In microcomputer systems, direct memory access (DMA) is an important structure. It takes over the data and address bus originally controlled by the microprocessor (microprocessor) in an instant, so that peripheral equipment, such as disk drives and other input/output devices, can directly exchange and transmit data with memory devices via the bus, improving Data flow efficiency.
请参照图1,它是描绘DMA结构于一微电脑系统中的方块示意图。当控制信号线8使微处理器单元(microprocessor unit)1交出总线6、7的控制权,DMA即开始进行。此时由DMA控制单元(DMA controlunit)3控制操作:它一方面接受请求信号(request),仲裁安排适当的数据传输通道(channel),一方面产生关于待传数据在存贮器装置2内的地址及位组(bytes)数等相关信息,藉以经由总线6、7,直接在存贮器装置2和输入/输出装置5之间进行数据传输。Please refer to FIG. 1, which is a schematic block diagram depicting a DMA structure in a microcomputer system. When the control signal line 8 makes the microprocessor unit (microprocessor unit) 1 hand over control of the
然而传统的DMA结构,是利用一较低位数,a位的DMA控制器,加上一个b位的页面寄存器(page registor),共同构成一较大位数的所谓n位DMA控制单元,其中n=a+b。However, the traditional DMA structure utilizes a lower number of digits, a DMA controller, and a b-bit page register (page register) to jointly form a so-called n-bit DMA control unit with a larger number of digits, wherein n=a+b.
在一486个人电脑系统中,依照上述DMA结构,为了提供32位的DMA,必须先执行下列动作:In a 486 personal computer system, according to the above DMA structure, in order to provide 32-bit DMA, the following actions must be performed first:
1.规划a位的基本地址(base address)寄存器;1. Plan the base address (base address) register of a bit;
2.规划b位的页面地址(page address)寄存器;2. Plan the page address (page address) register of b bits;
3.规划a位的基本计数(base count)寄存器;3. Plan the basic count (base count) register of a bit;
4.规划控制寄存器;4. planning control register;
5.清除屏蔽(mask)寄存器;以及5. Clear the mask register; and
6.发出DMA请求(request)。6. Issue a DMA request (request).
其中,步骤1、2是作为构成n位的基本地址,以决定数据开始传输的地址;步骤3是决定有多少位组的数据待传输,步骤4是决定其控制模式,步骤5、6是启动DMA动作。Among them,
依照上述DMA结构,因其地址寄存器仅8位,32位的DMA共须规划6次寄存器,包括2次基本地址寄存器、2次页面寄存器及2次基本计数寄存器。同时,当其处理数据地址模式时,受限于页面寄存器,只能提供8位和16位两种,不能与总线的位数相匹配,以致无法处理双字(double word)的地址对准(alignment)。According to the above DMA structure, because the address register is only 8 bits, a 32-bit DMA needs to plan 6 registers in total, including 2 basic address registers, 2 page registers and 2 basic count registers. At the same time, when it handles the data address mode, it is limited by the page register, which can only provide two kinds of 8-bit and 16-bit, which cannot match the number of bits of the bus, so that it cannot handle the address alignment of double word (double word) ( alignment).
随着微处理器处理数据的能力逐步加大,其具有的数据运算位数不断提高,加之现今多媒体系统所赖以运作的大量数据交换环境需求殷切,均使上述已知DMA结构渐露窘状。其复杂的规划寄存器、缺乏灵活性的地址模式以及有限度的地址对准功能皆无法满足需求。With the gradual increase in the ability of the microprocessor to process data, the number of data calculation bits it has continues to increase, and the demand for a large amount of data exchange environment on which today's multimedia systems rely, all make the above-mentioned known DMA structure gradually become embarrassing. . Its complex planning registers, inflexible address modes, and limited address alignment functions cannot meet the needs.
本发明的主要目的是提出一种与总线位数相匹配的存贮器直接存取结构,能够提高基本地址寄存器位数,减少寄存器规划的次数,提高效率。The main purpose of the present invention is to propose a memory direct access structure that matches the number of bits of the bus, which can increase the number of bits of the basic address register, reduce the number of times of register planning, and improve efficiency.
本发明的另一目的是提出一种与总线位数相匹配的存贮器直接存取结构,能够增加地址模式,能处理较高位数地址的对准,强化功能。Another object of the present invention is to propose a memory direct access structure that matches the number of bits of the bus, which can increase address modes, can handle alignment of addresses with higher numbers of bits, and enhances functions.
本发明是一种与总线位数相匹配的存贮器直接存取结构,本发明的第一种技术方案以具有第一位数的一存贮器直接存取控制器,依据一数据的基本地址及基本计数,接受请求信号,产生命令信号,使数据经由具有第二位数的总线直接传输于存贮器装置与输入/输出装置之间。其中,第一位数相当于第二位数。上述存贮器直接存取结构能以双字地址对准能力大幅提高传输效能,并以最少的寄存器规划次数加速存贮器直接存取动作。其包括:The present invention is a memory direct access structure matched with the number of bits of the bus. The first technical scheme of the present invention uses a memory direct access controller with the first number of digits, based on a data base The address and the basic count receive the request signal and generate the command signal so that the data is directly transmitted between the memory device and the input/output device through the bus with the second digit. Among them, the first digit is equivalent to the second digit. The above-mentioned memory direct access structure can greatly improve the transmission performance with double-word address alignment capability, and accelerate the memory direct access operation with the least number of register planning times. It includes:
一基本地址寄存器,具有所述第一位数,耦合总线以贮存数据的基本地址;a base address register, having said first bit, coupled to the bus to store the base address of the data;
一基本计数存贮器,具有所述第一位数,耦合总线以贮存数据的基本计数;a base count memory, having said first number of bits, coupled to the bus to store a base count of data;
一存贮器直接存取控制器,具有所述第一位数,藉所述基本地址寄存器提供的数据的基本地址与所述基本计数寄存器提供的数据的基本计数,配合输入/输出装置和存贮器装置的请求与命令信号,执行存贮器直接存取控制动作。A memory direct access controller, having said first digit, by means of the basic address of the data provided by said basic address register and the basic count of data provided by said basic count register, in cooperation with input/output devices and storage The request and command signal of the memory device executes the memory direct access control action.
本发明的第二种技术方案包括一第一对准控制器、一第二对准控制器、一第一多路选择器、一第二多路选择器、一基本地址寄存器、一基本计数寄存器、一存贮器直接存取控制器,以具有第一位数的所述寄存器直接存取控制器,分别依据一从总线采集经所述第一或第二对准控制器进入所述第一或第二多路选择器的第一类数据的位组数、地址、页面值及一由总线采集直接进入所述第一或第二多路选择器的第二类数据的基本地址、基本计数,并接受请求信号,产生命令信号,使输入/输出装置能经由具有所述第二位数的总线直接与存贮器装置进行数据交换,所述第二位数是与所述第一位数相当;其中,所述存贮器直接存取控制结构包括:The second technical solution of the present invention includes a first alignment controller, a second alignment controller, a first multiplexer, a second multiplexer, a basic address register, and a
一第一对准控制器,耦合总线,用以取得所述第一类数据的地址及页面值,排序对准而形成基本地址;A first alignment controller, coupled to the bus, for obtaining the address and page value of the first type of data, sorting and aligning to form a basic address;
一第二对准控制器,耦合总线,用以取得所述第一类数据的位组数及页面值,排序对准而形成基本计数;A second alignment controller, coupled to the bus, used to obtain the number of bytes and page values of the first type of data, sort and align to form a basic count;
一第一多路选择器,具有二选择输入端,分别耦合总线而取得所述第二类数据的基本地址,以及耦合所述第一对准控制器而取得所述第一类数据的基本地址,并且接受一启动信号控制,提供所述第一类数据的基本地址或所述第二类数据的基本地址中之一输出;A first multiplexer, having two selection input terminals, respectively coupled to the bus to obtain the basic address of the second type of data, and coupled to the first alignment controller to obtain the basic address of the first type of data , and receiving a start signal control, providing an output of one of the basic address of the first type of data or the basic address of the second type of data;
一第二多路选择器,具有二选择输入端,分别耦合总线而取得所述第二类数据的基本计数,以及耦合所述第二对准控制器而取得所述第一类数据的基本计数,并且接受一启动信号控制,提供所述第一类数据的基本计数或所述第二类数据的基本计数其中之一输出;a second multiplexer, having two selection input terminals, respectively coupled to the bus to obtain the basic count of the second type of data, and coupled to the second alignment controller to obtain the basic count of the first type of data , and is controlled by a start signal, and provides an output of one of the basic count of the first type of data or the basic count of the second type of data;
一基本地址寄存器,具有所述第一位数,耦合所述第一多路选择器,用以贮存基本地址;A basic address register, having the first number of digits, coupled to the first multiplexer, for storing the basic address;
一基本计数寄存器,具有所述第一位数,耦合所述第二多路选择器,用以贮存基本计数;以及a base count register, having said first number of bits, coupled to said second multiplexer, for storing base counts; and
一存贮器直接存取控制器,具有所述第一位数,耦合所述基本地址寄存器与所述基本计数寄存器,读取基本地址与基本计数,并依基本地址与基本计数,配合输入/输出装置和存贮器装置之请求与命令信号,执行存贮器直接存取控制动作;所述存贮器直接存取控制器并产生启动信号以控制所述第一对准控制器、所述第二对准控制器、所述第一多路选择器、及所述第二多路选择器,以于A memory direct access controller, having the first digit, coupling the basic address register and the basic count register, reading the basic address and the basic count, and according to the basic address and the basic count, cooperate with the input/ The request and command signal of the output device and the memory device executes the memory direct access control action; the memory direct access controller generates an activation signal to control the first alignment controller, the a second alignment controller, the first multiplexer, and the second multiplexer, for
(1)传送所述第一类数据时,启动所述第一对准控制器和所述第二对准控制器的动作,关闭所述第一多路选择器与所述第二多路选择器耦合至总线的通路,使所述第一类数据的基本地址和基本计数传至所述基本地址寄存器与所述基本计数寄存器;以及(1) When transmitting the first type of data, start the actions of the first alignment controller and the second alignment controller, and close the first multiplexer and the second multiplexer a channel coupled to the bus, so that the base address and base count of the first type of data are passed to the base address register and the base count register; and
(2)传送所述第二类数据时,停止所述第一对准控制器和所述第二对准控制器的动作,关闭所述第一多路选择器耦合所述第一对准控制器的通路,关闭所述第二多路选择器耦合所述第二对准控制器的通路,以使所述第二类数据的基本地址及基本计数能得直接由总线传至寄存器。(2) When transmitting the second type of data, stop the actions of the first alignment controller and the second alignment controller, close the first multiplexer to couple the first alignment controller The channel of the second multiplexer coupled with the second alignment controller is closed, so that the basic address and basic count of the second type of data can be directly transmitted to the register through the bus.
为进一步说明本发明的目的和特点,本文特举一较佳实施例,并配合附图,作详细说明如下:In order to further illustrate the purpose and characteristics of the present invention, a preferred embodiment is cited in this paper, and in conjunction with the accompanying drawings, the detailed description is as follows:
附图简要说明:Brief description of the drawings:
图1为表示存贮器直接存取控制结构位于一微电脑系统中的方块示意图;Fig. 1 is a schematic block diagram showing that the memory direct access control structure is located in a microcomputer system;
图2是本发明一较佳实施例的方块示意图;Fig. 2 is a schematic block diagram of a preferred embodiment of the present invention;
图3是图2中存贮器直接存取控制器内部方块示意图;Fig. 3 is a schematic block diagram of the internal block of the memory direct access controller in Fig. 2;
图4是图2中对准控制器内部方块示意图。FIG. 4 is a schematic diagram of an internal block of the alignment controller in FIG. 2 .
首先,参照图2,本发明的存贮器直接存取结构,是由具有第一位数的DMA控制结构3,与具有第二位数的总线6、7连接,以提供存贮器装置与输入/输出装置直接交换数据,其中第一位数是相当于第二位数。At first, with reference to Fig. 2, the memory direct access structure of the present invention is to be connected with the
在上述DMA控制单元3中包括:Include in above-mentioned DMA control unit 3:
第一对准控制器15,从总线6、7取得数据的地址和页面值,利用一寄存器序列组,将之排序对准以成为基本地址,于稍后输出。The
第二对准控制器16,其亦从总线6、7取得数据的位组数和页面值,以形成基本计数,其运作方式将在下文更进一步描述。The
第一多路选择器13有两个选择输入端,分别接至总线6、7和前述第一对准控制器。当系统以熟知的页面寄存器模式传送DMA信息时,此多路选择器即通过前级的第一对准控制器15取得基本地址,否则,就直接从总线6、7取得基本地址。第二多路选择器14亦如第一多路选择器13的操作,用以取得基本计数。请注意,前述第一对准控制器15、第二对准控制器16、第一多路选择器13、以及第二多路选择器的设置,均是为了与熟知系统兼容。The
基本地址寄存器11具有第一位数,接受第一多路选择器13提供的基本地址并将之贮存,它是数据开始传输的地址。The
基本计数寄存器12具有第一位数,接受第二多路选择器14提供的基本计数而予以贮存,它是数据待传的位组数。The
以及存贮器直接存取控制器10,具有第一位数,根据基本地址寄存器11做基本地址数据存取动作,根据基本计数寄存器12做基本计数数据存取动作,配合存贮器装置及输入/输出装置的请求而执行控制DMA的动作。And memory
为了更清楚存贮器直接存取控制器的动作,请参阅图3,它是由若干模式(mode)寄存器22、一个仲裁器24、一个控制器26及一个地址产生器28组成。模式寄存器22与前述基本地址寄存器11、基本计数寄存器12交换数据,产生各种控制模式,如地址模式及其它相关的读/写动作等,藉以规划DMA动作模式。仲裁器24则依前述模式,仲裁DMA的服务请求(service request)20,决定优先权(priority),以维持数据传输通道的秩序。控制器26则发出控制信号以控制输入/输出装置4及存贮器装置2,使完成其各自必需的动作,另以一启动信号控制前述第一对准控制器、第二对准控制器、第一多路选择器以及第二多路选择器,以决定依本发明的数据地址模式进行DMA动作,还是与熟知DMA结构兼容运作。而地址产生器28是依地址控制模式产生所需存贮器装置的读取位置以备读取及传输数据。In order to understand the action of the direct memory access controller, please refer to FIG. 3 , which is composed of several mode registers 22 , an
上述存贮器直接存取控制器还必须由地址产生器28控制第一条及最后一条数据的传输位组数,以使每次传输的地址均得位于2m边缘位置,其中m为自然数,且2m小于等于第一位数,藉以满足地址对准的要求。The above-mentioned memory direct access controller must also control the number of transmission bits of the first and last data by the
而对于熟知规划传输数据的起始位置及个数的相容要求,是于对准控制器15、16中处理,请参照图4。对准控制器15、16自总线6、7取得数据后,根据DMA控制器的启动信号指示,由地址比较器32,选择适当的寄存器于寄存器序列组34安置。如此,将使得原来应用于传统结构的驱动程序(driver)不须更改,就可使用于本结构。The compatibility requirement of knowing the starting position and quantity of the planned transmission data is processed in the
依照上述DMA结构,例如在486个人电脑系统中,第一位数为32位,由执行DMA动作时,仅需规划两次寄存器,即一次32位的基本地址寄存器和一次32位的基本计数寄存器,因此可大幅减少微处理器规划DMA控制单元的次数,并且可因对准的地址,一次用足32位地址,无须受限于传统DMA结构的页面寄存器。这些优点在现今局部总线协议(local bus protocol)盛行及多媒体系统需求殷切的情况下,就显得更为重要。According to the above DMA structure, for example, in a 486 personal computer system, the first digit is 32 bits. When performing DMA operations, only two registers need to be planned, that is, a 32-bit basic address register and a 32-bit basic count register. , so the number of times the microprocessor plans the DMA control unit can be greatly reduced, and due to the aligned address, a full 32-bit address can be used at one time, without being limited to the page register of the traditional DMA structure. These advantages are even more important in the current situation where the local bus protocol (local bus protocol) is prevalent and the demand for multimedia systems is ardent.
虽然本发明已以一较佳实施例揭露如上,然其并非用以限定本发明,任何本领域的技术人员,在不脱离本发明的精神和范围内,均能作出少许的更动与润饰,因此本发明的保护范围当由后附的权利要求所界定的为准。Although the present invention has been disclosed as above with a preferred embodiment, it is not intended to limit the present invention. Any person skilled in the art can make some changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention should be defined by the appended claims.
Claims (5)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN94118982A CN1046040C (en) | 1994-11-29 | 1994-11-29 | Memory direct access structure matching the number of bus bits |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN94118982A CN1046040C (en) | 1994-11-29 | 1994-11-29 | Memory direct access structure matching the number of bus bits |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1123931A CN1123931A (en) | 1996-06-05 |
| CN1046040C true CN1046040C (en) | 1999-10-27 |
Family
ID=5039072
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN94118982A Expired - Lifetime CN1046040C (en) | 1994-11-29 | 1994-11-29 | Memory direct access structure matching the number of bus bits |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN1046040C (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100229897B1 (en) * | 1997-01-10 | 1999-11-15 | 윤종용 | Timing Mode Selection Device According to Direct Memory Access Transmission Method |
| JP2006178550A (en) * | 2004-12-21 | 2006-07-06 | Nec Corp | Duplex synchronization system and method for operating duplex synchronization system |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1023221C (en) * | 1988-01-15 | 1993-12-22 | 罗纳·布朗克制药公司 | The preparation method of 1-alkyl-5-nitroimidazole |
| CN1089054A (en) * | 1992-10-02 | 1994-07-06 | 三星电子株式会社 | semiconductor memory |
-
1994
- 1994-11-29 CN CN94118982A patent/CN1046040C/en not_active Expired - Lifetime
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1023221C (en) * | 1988-01-15 | 1993-12-22 | 罗纳·布朗克制药公司 | The preparation method of 1-alkyl-5-nitroimidazole |
| CN1089054A (en) * | 1992-10-02 | 1994-07-06 | 三星电子株式会社 | semiconductor memory |
Also Published As
| Publication number | Publication date |
|---|---|
| CN1123931A (en) | 1996-06-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1595381A (en) | High speed and flexible control for bridge controllers | |
| CN1224917C (en) | Interrupt controller and method for processing interrupt request signal | |
| US5822553A (en) | Multiple parallel digital data stream channel controller architecture | |
| US5897663A (en) | Host I2 C controller for selectively executing current address reads to I2 C EEPROMs | |
| US6154793A (en) | DMA with dynamically assigned channels, flexible block boundary notification and recording, type code checking and updating, commands, and status reporting | |
| US5797043A (en) | System for managing the transfer of data between FIFOs within pool memory and peripherals being programmable with identifications of the FIFOs | |
| CN100371873C (en) | Semiconductor memory card, semiconductor memory control device, and semiconductor memory control method | |
| EP1313025B1 (en) | Direct memory access transfer of data and check information to and from a data storage device | |
| CN1499530A (en) | Method and apparatus for efficiently allowing out-of-order write processing in a non-volatile memory system | |
| US7380115B2 (en) | Transferring data using direct memory access | |
| CN1180430A (en) | Memory controller which executes read and write commands out of order | |
| CN1653434A (en) | Get data mask mapping information | |
| WO1997034235A1 (en) | Multi-threaded fifo pool buffer and bus transfer control system | |
| WO1997034235A9 (en) | Multi-threaded fifo pool buffer and bus transfer control system | |
| CN1178943A (en) | Disk device | |
| CN1217506A (en) | cache memory system | |
| TWI727236B (en) | Data bit width converter and system on chip thereof | |
| CN1653435B (en) | Apparatus, method and system for mapping data masks in hardware | |
| US8074232B2 (en) | Method for improving the communication of the human interface device | |
| CN1160618C (en) | Programmable Controllers | |
| US6356969B1 (en) | Methods and apparatus for using interrupt score boarding with intelligent peripheral device | |
| CN1046040C (en) | Memory direct access structure matching the number of bus bits | |
| US5265228A (en) | Apparatus for transfer of data units between buses | |
| US20190369909A1 (en) | Homogeneous in-storage computation system | |
| EP0522728A1 (en) | Method for efficient access of data stored in a nexus table |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C06 | Publication | ||
| PB01 | Publication | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| C17 | Cessation of patent right | ||
| CX01 | Expiry of patent term |
Expiration termination date: 20141129 Granted publication date: 19991027 |