Movatterモバイル変換


[0]ホーム

URL:


US4095265A - Memory control structure for a pipelined mini-processor system - Google Patents

Memory control structure for a pipelined mini-processor system
Download PDF

Info

Publication number
US4095265A
US4095265AUS05/693,816US69381676AUS4095265AUS 4095265 AUS4095265 AUS 4095265AUS 69381676 AUS69381676 AUS 69381676AUS 4095265 AUS4095265 AUS 4095265A
Authority
US
United States
Prior art keywords
memory
processor
line
signal
address
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
Application number
US05/693,816
Inventor
Richard Alan Vrba
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines CorpfiledCriticalInternational Business Machines Corp
Priority to US05/693,816priorityCriticalpatent/US4095265A/en
Priority to FR7713453Aprioritypatent/FR2354597A1/en
Priority to GB20890/77Aprioritypatent/GB1573539A/en
Priority to IT23790/77Aprioritypatent/IT1115319B/en
Priority to JP5946677Aprioritypatent/JPS52149445A/en
Priority to DE19772723467prioritypatent/DE2723467A1/en
Application grantedgrantedCritical
Publication of US4095265ApublicationCriticalpatent/US4095265A/en
Anticipated expirationlegal-statusCritical
Expired - Lifetimelegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

A memory control structure for a pipe-lined mini-processor which allows the processor to work with relatively slow memories without degradation of performance. The memory structure includes a memory selector which provides an interface between the processor output and the inputs of a plurality of memories of different types and speeds. The memory selector receives address and control information from the processor and generates the timing and selection signals for the memories. The memory structure also includes fan-in circuitry connected to the outputs of all the memories. The fan-in circuitry includes latches for sampling the output of each memory and multiplexing the memory outputs onto a single data bus for transfer of data from the memories to the processor.

Description

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to logic for interfacing between a processor and a plurality of memories having different operating and timing characteristics.
2. Prior Art
It is known in the prior art to provide a single interface controller for a plurality of peripheral devices such as storage devices and input/output devices. However, prior art interface controllers are limited to the selection of devices of the same type each of which contains its own timing generator. The controller thus acts as a peripheral processor, interpreting instructions from the central processor and selecting the desired one of the plurality of devices under its control. This type of control system is wasteful of circuitry in that timing and control circuits must be duplicated for each device.
OBJECTS OF THE INVENTION
It is a primary object of the present invention to improve access control between a processor and a plurality of different memory devices.
It is another object of the present invention to reduce memory power consumption.
It is a further object of the present invention to reduce the amount of control circuitry necessary to run a plurality of different memories.
SUMMARY OF THE INVENTION
These and other objects of the invention are accomplished by providing memory control circuitry which interfaces between the central processing unit and Random Access and Read Only memories. The memory control circuitry includes selection circuitry and fan-in circuitry. The memory selection circuitry receives signals from the processor indicating whether RAM or ROS is to be selected and the address to be accessed. The selection circuitry then generates selection signals to the proper memory and generates timing signals of the proper timing to run the memory selected. The fan-in circuitry is controlled by the selection circuitry and includes a multiplexor to sample data from each of the memories onto a single output data bus to the processor. Fan-in also includes latches to hold the data for a cycle equal to the processor's cycle where the memory operates at a faster cycle time than the processor.
BRIEF DESCRIPTION OF THE DRAWING
FIG. 1 is an overall diagram of a word processing system including the memory structure of this invention.
FIG. 2 is a block diagram of the memory select portion of the invention showing its inputs and outputs in detail.
FIG. 3 is a block diagram of the fan-in portion of the invention showing its inputs and outputs in detail.
FIGS. 4, 5, 6 and 7 show the detailed logic of the memory select of FIG. 2.
FIG. 8 shows the detailed logic of the fan-in apparatus of FIG. 3.
DESCRIPTION OF THE PREFERRED EMBODIMENT
Referring to FIG. 1, a block diagram of a word processing system is shown. The system comprises a Central Processing Unit (CPU) 1 including a processor and system clock. The output of theCPU 1 is connected todata bus 11 which communicates with a random access memory section ofmemory unit 2 and with abus selector 3. A detailed description of the bus selector is given in copending application Ser. No. 693,821, filed June 7, 1976, by W. C. Cockerill, et al., entitled "Bus Steering Structure for Low Cost Pipelined Processor System", now U.S. Pat. No. 4,057,846, issued Nov. 8, 1977, and assigned to the same assignee as the present invention. It is the function of thebus selector 3 to logically and electrically isolate the I/O devices 6-10 attached tobus 13 from the rest of the system during system operations which do not use those I/O units and to provide a data path between I/O units 6-10 and the processor for operation which access those I/O units. Thebus selector 3 is controlled by theCPU 1 throughcontrol bus 15.
The system further includes amemory select 17 which receives control and timing signals from theCPU 1 oncontrol bus 19. The output of the memory select is connected to a Random Access memory (RAM) bycontrol line 21, to the read only storage (ROS) section ofmemory 2 bycontrol line 20 and to the fan-incontrol 18 throughline 22. It is the function of the memory select 17 to decode control and general timing signals from theCPU 1 to generate the required selection and timing signals for either the ROS or RAM section of thememory 2. During the period when the memories are not in use, only a minimum power level is used by the memory thereby reducing power consumption.
The output of RAM memory is connected to fan-in 18 throughdata bus 5 and the output of ROS memory is connected to fan-in 18 throughdata bus 4. Fan-in 18 receives control signals from theCPU 1 throughcontrol line 23 and from memory select 17 throughcontrol line 22. It is the function of fan-in 18 to multiplex data output from the RAM and the ROS onto asingle output bus 12 which is connected to the processor data-inbus 14. Fan-in also provides a latching function for holding memory output data true for the time required by the processor where the memories operate at a higher data rate then the processor.
Referring now to FIG. 2, a more detailed drawing of the memory select 17 is shown. The memory select 17 receives timing, address, and control signals overbus 19 from theCPU 1 and system clock and generates timing and select signals for the RAM and ROS memories. For the RAM memory the memory select generates a card select signal (CPCS) onlines 253, 257 or 269 to select one of the three cards which contain the RAM memory, a chip select X signal (CSX) onlines 273, 277, 281, or 285 to select the X address of a chip on the selected cards, a chip select Y signal (CSY) onlines 289 or 293 to select the corresponding Y address for the selected chip and a write signal (CPWRT) 245 if the operation is write into RAM.
Referring now to FIG. 4, card select is generated by the combination of address line 13 (ADR13) oninput pin 201, instruction (INSTR) on input pin 399 (FIG. 6), WHIRL oninput pin 237, address line 14 (ADR14) oninput pin 205 and diagnostics (DIAG) oninput pin 223. ADR13 is output from the processor and feeds intoNAND gate 200 where it is inverted to produce SADR13 online 203. ADR13 is also input to NANDgate 228 and 234. ADR14 is also output from the processor and is buffered by NANDgate 202 to produce SADR14 online 207. INSTR is output from the processor oninput pin 399 to and buffered by NANDgate 360 to produce INSTR online 401. INSTR online 221 and DIAG online 223drive NAND gate 210 to produce an inhibit signal online 225 to inhibit RAM cycles during instruction fetches except when in the diagnostic mode. Normally instruction fetches are made from the ROM memory. This allows a program to be loaded and used to test out the system without disturbing the system program stored in ROM. The output ofNAND gate 210 is combined with the processor cycle input (PROCY) onpin 227 and address line 15 (ADR15) oninput pin 229 by NANDgate 212 to produce an enable signal CSXY for RAM memory. CSXY is inverted by NANDgate 238 to produce enable signal CSXY. NANDgate 238 is also driven by two external memory control signals WHIRL oninput pin 237 and RAMCY oninput pin 261. WHIRL and RAMCY permit access to RAM independent of the processor cycle request PROCY.
Each of the RAM cards may contain modules, each of which contains up to four chips depending on the amount of memory contained on that card. Address line 10 (ADR10) determines the Y component of the chip select, CSY1 or CSY2. The combination of address line 11 (ADR11) and address line 12 (ADR12) determines the X component of the chip CSX1, CSX2, CSX3 or CSX4.
The write signal CPWRT for the RAM is derived by the memory select from the processor signal CWRT. CWRT is input to memory select oninput pin 231 and buffered by NANDgate 214 to produce WRT online 233. WRT is combined with the enable signal CSXY online 235 and external memory control signal WHIRL onpin 237 byNAND gate 216 to produce WRT. WHIRL inhibits writing into RAM during accesses to the RAM memory caused buy WHIRL.
A timing strobe signal CSXYTM is generated for the RAM by the logic comprisingNAND gates 318 and 320, NORgate 322 and ANDgate 324. The clock signal FSUS onpin 307 is shortened by the combination of timing signals FSUR onpin 305 and F2500K onpin 309. The result is a signal slightly shorter than FSUS. The strobe signal CSXYTM controls the timing of the chip select gates for the chip X and Y selects. CSXYTM is again shortened to produce write selection by combination with F2500K and FSUR inNAND gate 220 to produce CPWRT. CPWRT is input to NORgate 222 overline 243 to produce RAM write signal CPWRT onoutput pin 245 if the write function is not inhibited by external control WHIRL.
ROS Selection
Memory select 17 in FIG. 1 generates the timing and control signals required to run the read only storage memory. The ROS memory is addressed in individual 8K byte blocks SI0K, SI8K, SI16K, . . . S56K.
FIG. 7 shows the circuits which produce the selection signals LCS and LRST1 necessary to drive the ROS. These selection signals are derived by memory select from the system clock timing signals XA, B, XCC and FSUS. The signals XA, B and FSUS are free running signals whose frequency and relative skew ar designed to be multiples of the timing for the technology being used. in this case, LSI MOS. XCC defines the beginning of a cycle and corresponds to the processor's phase one. XA enters the memory select oninput pin 299 and is buffered to produce XA. Likewise, B enters the memory select onpin 301 and is buffered to produce B. The series of latches provide a division of the system clock signals in order to produce the proper selection signal LCS for the ROS memory. Signals XA online 343 and B oninput pin 301 are free running and drive the inputs ofNAND gate 362 which produces latch signal MLSDL at theoutput 357 ofdriver 364. The proper logical level at MLSDL is produced by the combination of XA and B with the cycle signal XCC oninput pin 303. The latch is reset by signals FSUS online 351, XA online 299, and B online 301, assuming the test input TESTMI is high.
MLSDL drives the input ofNAND gate 366 and is combined with FSUS oninput pin 307, XA oninput pin 299, and B online 345 to produce intermediate latch signal IMLT online 368. MLSDL in combination with ROM controls the generation of ROMCY which enables the fan-in latch to be discussed below. MLSDL and IMLT NAND throughgate 356 also control the generation of RAMT2 clock signal which enables the channel selects for fan-in. The intermediate latch is reset by XA, B, and MLSDL. The output IMLT of NORgate 368 online 369 drives the input ofNAND gate 378 which controls the generation of the ROS chip select signal LCS online 367. LCS is set byNAND gate 378 and NORgate 380 using the combination B online 345, ROM online 369, XA online 343 and IMLT online 363. LCS is reset by FSUS, XA, and IMLT. ROM is generated inNAND gates 386 and 388 from the latched instruction signal LINSTR whose generation is discussed below. LCS is input to the drivers for all ROS memory chips and combined with the address selection signal to enable the proper chip, FIG. 5. The ROS chip is reset prior to chip select by LRSTI which is generated by XCC, B, and MLSDL inNAND gates 398 and 399.
The address latches for ROS chip selection are shown in FIG. 6. The combination of address line 13 (ADR13) online 201 from theCPU 1 into memory select 17,address line 14 online 205, andaddress line 15 online 295 in combination with INSTR determine which of the nine 8K byte chips will be selected. The signal INSTR oninput pin 399 determines whether the command is an instruction or data. Referring to FIG. 6, INSTR entersNAND gate 360 oninput pin 399 and is inverted to produce INSTR online 401. INSTR is latched up by the latch comprisingNAND gates 350 and 354 and NORgate 352. The set signal for all the latches is produced by clock signals XA onpin 299 and B onpin 301 and the intermediate latch signal IMLT online 363 from the ROS timing generator discussed above. The reset signal for the address latches and instruction latch is the SET anded with the RAM memory strobe signal CSXYTM. Address line 13 (ADR13) is latched up by the latch comprisingNAND gates 332 and 336 and NORgate 334. The signal address line 14 (ADR14) oninput pin 205 is latched by the combination ofNAND gates 344 and 348 and NORgate 346 while the signal address line 15 (ADR15) oninput pin 295 is latched byNAND gates 326 and 330 and NORgate 328.
The latched address signals of FIG. 6 in combination with the chip select signal LCS of FIG. 7 control the ROS selection circuitry of FIG. 5. In the preferred embodiment the mini-processor has a basic 64K byte address space. In addition, it has an instruction output line, INSTR, online 399 which has the following characteristics: it is driven low during instruction byte fetches and is driven high during indirect data fetches, register and byte fetches and I/O cycles. The INSTR line is used by the memory select to distinguish areas of the ROS memory as either data or instruction bytes. INSTR can also be used to expand the 64K byte processor address space to 96K bytes. This expansion takes place in the memory select providing 32K bytes of "instruction only" space, 32K bytes of "data only" space and 32K bytes of "mixed" memory space.
The memory select can address a maximum of 24K bytes of RAM leaving the remaining 72K bytes for ROS. By restricting the RAM to "data only", the ROS can be divided into 8K of "data only", 32K of "instruction only" and 32K of "mixed" data and instructions. Referring to FIG. 5, the first 32K bytes of ROS are addressable as instructions only. These are addressed by chip select lines SI0K, SI8K, SI16K and SI24K. Line SD24K addresses 8K of data only and lines S32K, S40K, S48K and S56K addresses 32K of mixed data and instructions. The latched instruction signal LINSTR online 391 and low order address line LADR15 online 381 in combination with ENROMD generates ENROMI which controls accessing the 32K bytes of instructions throughNAND gates 272, 276, 280 and 284. LINSTR controls the accessing of the 8K bytes of data only throughNAND gate 288 and the combination of LADR15 intoNAND gate 296 and LINSTR and RCM intoNAND gate 300 generates ENROMD online 415 which controls accessing to the 32K bytes of mixed ROS throughNAND gates 302, 306, 310 and 314 in addition to being used to generate ENROMI as described above.
The 32 K bytes of ROS which are designated as instruction only can normally not be accessed as data. However, the Cyclic Redundancy Check (CRC) error checking technique requires access to all ROS as data. In order to accommodate this requirement the signal ROS Check Mode (RCM) oninput pin 341 has been included to allow access to the instruction only area as data. Thus it is possible to check the memories and detect errors in many instances before actually executing an instruction containing an error. RCM is entered by drivingpin 341 high. This controlsNAND gate 300 to produce a logical zero at ENROMD online 415. ENROMD then controls NORgate 270 in combination with ENROM to generate a ENROMI to gain access to instruction only ROS.
FAN-IN
Data output by the ROS and RAM memories to the processor is controlled by the system logic Fan-in. Referring to FIG. 1, Fan-in 18 is connected to the outputs of ROS bybus 4 and RAM bybus 5. Fan-in 18 receives control signals from memory select 17 overcontrol line 22 and from the processor and systems clock overcontrol line 23. Theoutput 12 of Fan-in 18 is connected to the processor data-inbus 14. Fan-in serves as a data "funnel" to select data from the three memory output paths and place it on a single bus to the processor.
Referring to FIG. 3 a more detailed view of the inputs and output of the Fan-in is shown. The Fan-in has three input data paths,data bus 5 for the RAM memory and the twodata buses 4 for the ROS. These data buses are each nine bits wide. Any one of three data paths can be selected as a function of the CPU control signal address line 12 (ADR12) oncontrol line 23 and memory select control line ROS cycle (ROMCY) oncontrol line 311. ROMCY enables the ROS path and disables the RAM path while ADR12 selects the "A" or "B" channel ofROS data bus 4.
Referring now to FIG. 8, the Fan-in logic is shown in detail. ADR12 enters NAND gate 404 oninput pin 217 and is latched on the leading edge of timing signal RAMT2 oninput pin 313 to generate CHNNL A or its inverse CHNNL B. ROMCY combines with CHNNL A in NAND gate 412 and NOR gate 414 to produce ROMCHA on line 451 or with CHNNL B in NAND gate 416 and NOR gate 418 to produce ROMCHB on line 455. ROMCHA drives input 451 of data latch shown in the dashed box and enables latching of data from channel A of theROS data bus 4. Latching of the data occurs at the rising edge of latch clock not signal LTCK on line 463 into NAND gate 430 and 438. LTCK is derived from two timing signals each for RAM and ROS: RAMT1 and RAMT2 or ROMT1 and ROMT2. RAMT1 oninput pin 309, ROMT1 oninput pin 301 and ROMT2 oninput pin 305 are free running timing signals generated by the system clock. RAMT2 oninput pin 313 is generated by the memory select along with read only store cycle signal ROMCY oninput pin 311. The signal ROMCY or its inverse ROMCY controls Fan-in to sample data from the RAM or from one of the ROS channels. ROMT2 oninput pin 305 is inverted by NAND gate 422 to produce ROMT2. ROMT2 and ROMT1 oninput pin 301 drive AND gate 424 whose gating is controlled by ROMCY. RAMT2 is inverted by NAND gate 444 to produce RAMT2 on line 447. RAMT2 and RAMT1 drive AND gate 420. When both RAMT2 and RAMT1 are at logical one LTCK is at logical zero and the data latch is disengaged. RAM data will be latched on the next falling edge of RAMT1 when ROMCY is at logical zero. ROMCY will be at logical one on line 465 enabling NAND gate 432 and 428. When strobed by LTCK the RAM data will pass through NAND gates 438 and 440 to bus driver 442. Bus driver 442 passes the data onto data bus DIO to the processor. data latch
The ROS memory is accessed when ROMCY is a logical one.Address line 12 ADR12 oninput pin 217 activates the channel selector to select either channel A or channel B. ROMCY oninput pin 311 enables either NAND gate 412 or NAND gate 414 to activate the channel driver ROMCHA 451 or ROMCHB 455 for the selected channel. The selected channel driver enables gate 434 or 436 to pass data from ROS channel A MOAO or ROS channel B MOBO respectively. The data is sampled by the data latch comprising NAND gates 428, 430 and 438 and enables NAND gate 440 to drive bus driver 442 and place the data on thebus 12 to the processor during the next processor cycle.
OPERATION
Referring now to FIGS. 2 and 4 assume that the processor initiates an access to the RAM section ofmemory 2. The processor instruction command INSTR is issued to the memory select 17 oninput pin 399. If INSTR is a logical zero the command is an instruction command or if INSTR is a logical one the command is a data command. Only data is stored in the RAM. INSTR is inverted byNAND gate 360 in FIG. 6 to produce INSTR online 401. INSTR drivesNAND gate 210 if the gate is not inhibited by DIAG indicating that system diagnostics are being performed. The processor also issues its cycle command PROCY on memoryselect input pin 227. PROCY and INSTR are combined byNAND gate 212 with address line signal ADR15 oninput pin 229 to produce the inverse CSXY of the chip selection signal. CSXY drivesNAND gate 238 to produce the RAM enable signal CSXY. TheNAND gate 238 is controlled by WHIRL online 237 and RAMCY oninput pin 259 which are at logical one when the RAM is addressed by the processor. The signals WHIRL and RAMCY permit access to a portion of the RAM memory by other devices external to the processor, thus, permitting the RAM to be used as a storage device for I/O devices such as printers and displays.
The RAM enable signal CSXY online 249 is distributed to all the chip select gates. In the preferred embodiment, the RAM memory is located on three integrated circuit cards, each containing up to 8K bytes. A card select signal CPCS is generated by the memory select in response to processor signals onaddress line 13, ADR13, andaddress line 14, ADR14. ADR13 oninput pin 201 is inverted byNAND gate 200 to produce SADR13 online 203 and ADR14 oninput pin 205 is inverted byNAND gate 202 to produce SADR14 online 207. RAM memory card number one, CPCS1, is selected when both ADR13 and ADR14 are at logical one. ADR14 drivesNAND gate 202 and 218 to produce WADR14.NAND gate 218 is controlled by the external device control signal WHIRL oninput pin 237 which is at logical one during a processor cycle. WADR14 online 241 and ADR13 oninput 201 are combined byNAND gate 228 to produce CPCS1.NAND gate 228 is enabled by the chip enable signal CSXY online 249. The output ofNAND gate 228 is dotted with the output ofNAND gate 224.NAND gate 224 is driven by signal DISPLM oninput pin 247 which enables an external display device to use the memory located on card number one as its data source. CPCS1 online 251 drivesbus driver 226 to place a card select signal CPCS1 onoutput pin 253.Memory cards 2 and 3 are selected in substantially the same manner with ADR13 equal to a logical zero and ADR14 equal to a logical one for the selection of memory card number two and ADR13 equal to a logical one and ADR14 equal to a logical zero for the selection of memory card number three.
Once the proper card has been selected, the memory select next generates signals to select the proper X and Y coordinates for the addressed memory on the selected card. The X address selection signal is generated by the memory select using the signals on the processor address line ADR11 oninput pin 213 and ADR12 oninput pin 217. In the preferred embodiment each module on the three circuit cards can hold up to four integrated circuit chips. The X and Y select signals enable the proper one of the four chips located on the card. Each card has four X select lines and two Y select lines. The chip is selected which is located at the intersection of the X and Y select lines. The four X select signals are combined with the first Y select signal to select one of the first two chips and are combined with the second Y select signal to select the other two chips.
The first X select signal, CSX1, ononput pin 273 is enabled when both ADR11 and ADR12 are at logical one. ADR11 oninput pin 213 and ADR12 oninput pin 217drive NAND gate 244 to produce CXS1 online 271.NAND gate 244 is enabled by the combination of chip select signal CSXY online 249 and timing signal CSXYTM online 263. CSXYTM is the memory strobe signal generated by memory select inNAND gates 318 and 320 and NORgates 322 and 324 from free running input signal FSUS oninput pin 307 and FSUR oninput pin 305 and F2500K oninput pin 309. The output ofNAND gate 244 is dotted with the output ofNAND gate 240.NAND gate 240 is controlled by the strobe timing signal CSXYTM and the display signal DISPLM which allows an external display device to enable the X select signal CSX1.
The X select signals CSX2, CSX3, CSX4 are generated in the same manner as CSX1 using a different combination of logical ones and zeros for ADR11 and ADR12. Chip select signal CSX2 is a logical one when ADR11 is logical zero and ADR12 is logical one. X chip select signal CSX3 is logical one when ADR11 is a logical one and ADR12 is a logical zero. X chip select signal CSX4 is a logical one when ADR11 is a zero and ADR12 is a logical zero.
The Y component of the chip select signal is generated by processor address line ADR10. Y select signal CSY1 is a logical one when ADR10 is a logical one. ADR10 drivesNAND gate 258 oninput pin 209 to produce CSY1 online 287.NAND gate 258 is enabled by chip select signal CSXY online 249 and timing strobe signal CSXYTM online 263. CSY1 which is a logical zero is inverted byline driver 260 to produce a logical one for CSY1 onoutput pin 289.
The second Y select signal CSY2 onoutput pin 293 is a logical one when ADR10 is a logical zero. CSY2 is determined byNAND gate 264 andline driver 266. The output ofNAND gate 264 is dotted with the output ofNAND gate 262.NAND gate 262 is controlled by external display DISPLM oninput pin 265 and timing strobe signal CSXYTM online 263 so that CSY2 may be enabled by an external display device. Recall that CSX1 could also be enabled by an external display device. Therefore, the combination of CSX1 and CSY2 may enable an external display device to select the chip at the intersection of these two signals.
Corresponding with the chip select signal, a signal must be generated to determine whether the operation is to be a read or write into the memory. This signal is CWRT which is output from the processor to the memory select oninput pin 231. When CWRT is a logical one, the instruction is a write into memory. CWRT is inverted byNAND gate 214 to produce WRT online 233. This signal occurs while the timing strobe CSXYTM and free running clock signals F2500K and FSUR are at logical one. These signals feedNAND gate 220 to produce signal CPWRT online 243. WRT online 233 feedsNAND gate 216 which is controlled by the chip select signal CSXY online 235 and external device signal WHIRL oninput pin 237. WHIRL controls this block because the external devices, except those that use RAMCY, are not permitted to write into memory, but only to read from memory. Since the operation is a processor write, then WRT online 239 will enableline driver 222 and pass the signal CPWRT onoutput pin 245 to the memory. For a memory read, processor output signal CWRT is a logical zero.
Referring now to FIGS. 5, 6, and 7, the operation of the read only storage selection circuitry will be discussed. The memory select generates the timing and control signals required to address the ROS. In the preferred embodiment, the ROS comprises 72K bytes of storage and is addressed in individual 8K byte blocks.First 32K bytes are designated as containing instructions only and are addressed by SI0K, S(8K, SI16K, and SI24K. The next 8K bytes, SD24K, are SI8K as containing data only, and the next 32K bytes, S32K, S40K, S48K, and S56K contain mixed data and instructions.
The timing signals necessary to run the ROS memory are generated by the logic in FIG. 7. A series of latches whose outputs are MLSDL, IMLT, and LCS, generate the timing signals from the free running clock signals XCC, XA, B, and FSUS output from the system clock. LSC is the chip select signal for the ROS and is input to each of the 8K byte block selection gates shown in FIG. 5. Instruction signal ENROMI online 411 and ENROMD online 415 determine whether the access to ROS is for data or instructions and correspondingly which section of the ROS memory may be addressed. Within the selected section, address signals ADR13 and ADR14 determine which of the 8K byte blocks is to be selected.
Referring to FIG. 6, address signal ADR13 sets the address latch comprised ofNAND gates 332 and 336 andOR gate 334 to produce the latched address signal LADR13 online 389. Corrspondingly,address signal 14, ADR14, is latched by the latch comprisingNAND gates 344 and 348 and NORgate 346 to produce LADR14 online 385. These two signals are input to each of theROS selection gates 272, 276, 280, 284, 288, 302, 306, 310 and 314 shown in FIG. 5. By selecting the proper combination of logical ones and zeros for these two signals along with the ROS chip select signal LCS, and the enabled ROS data signal ENROMD, or the enabled ROS instruction signal ENROMI, the proper 8k byte block on the ROS memory can be selected. The ROS data signal and ROS instruction signal are derived from the combination of theprocessor address line 15, ADR15, and the processor instruction signal INSTR. If the instruction signal INSTR is a logical one, then the data section of the ROS is addressed, while if the signal is a logical zero, the instruction section of the ROS is addressed.
Data is output from the RAM section of the memory ondata bus 5 and is output from the ROS section on either channel A or channel B ofdata bus 4. Bothdata buses 4 and 5 are input to system logic fan-in 18 which serves as a data "funnel" to select data from the three output memory buses and place it on a single bus to the processor.
The memory select generates two signals, RAMT2 online 313 and ROMCY online 311 which control the operation of the fan-in. Timing for the fan-in is derived from the clock signals FSUR, B and F2500K. In FIG. 8, if the output is from the RAM section of the memory, then RAMT2 will be a logical zero making its inverse RAMT2 a logical one. RAMT2 on line 447 drives AND gate 420 in combination with timing signal RAMT1 oninput pin 309 to set the fan-in data latch signal LTCK at the output of NOR gate 426 on line 463. Since the data output is from the RAM, the other control signal from the memory select, ROMCY on fan-ininput pin 311 will be a logical zero and its inverse ROMCY on line 465 will be a logical one. ROMCy controls the operation of NAND gate 432 to gate data from the RAM memory oninput pin 5 into the data ltch 500. The output of the data latch drives bus driver 442 to place the data onbus 12 to the processor. If data is being output from the ROS section of thememory 2, then ROMCY will be a logical one and RAMT2 will also be a logical one. RAMT2 oninput pin 313 clocks the channel selector to select either channel A on line 445 or channel B on line 443 of the ROS output. The logical condition ofaddress line 12, ADR12, oninput pin 217 determines whether channel A or channel B is selected. The selected channel together with ROMCY which is a logical one controls either NAND gate 412 or 416 to enable the proper channel driver 414 or 148. If channel A is selected, then signal ROMCHA on line 451 will be a logical one. This signal enables NAND gate 434 to gate data from output channel MOA0 of the ROS to the data latch 500. The output of the data latch drives bus driver 442 to place the data ondata bus 12 to the processor.
If channel B is selected then signal ROMCHB on line 455 will be a logical one. This signal enables NAND gate 436 to pass data on input pin MOB0 into the data latch 500. This data is likewise passed through the data latch to bus driver 442 and onto thedata bus 12 to the processor.
While the preferred embodiment of the invention has been described with reference to a particular form of logic it would be appreciated by those of skill in the art that other forms of combinational logic may be used to implement the invention without departing from the spirit and scope of the invention.

Claims (5)

I claim:
1. In a word processing system including a pipelined processor having an input bus, a system clock, and an output bus, and including a plurality of random access memory blocks and a plurality of read only storage memory blocks, said random access memory blocks and said read only storage memory blocks having different operating characteristics, a memory control system interconnected to said processor and said memory blocks for controlling access to the memory blocks by the processor, wherein the memory control system comprises:
means for receiving clock signals from said processor;
means responsive to said clock signals for generating memory cycle timing signals having a plurality of frequencies required to operate said memory blocks;
means for receiving an address and an instruction from said processor;
decoding means responsive to said address and instruction for generating and applying power selection signals and one of said memory cycle timing signals only to the memory block which contains the address equivalent to the address received from said processor; and
sampling means for latching the output of the selected memory block onto the input bus to the processor concurrent with the receipt of the next address and instruction from the processor.
2. The memory control system of claim 1 including latching means for expanding the total memory space addressable by the processor by decoding the processor's instruction as an address.
3. The memory control system of claim 1 further including external access means for inhibiting access by said processor to selected ones of said memory blocks and enabling access to said selected ones of said memory blocks by devices independent of said processor.
4. The memory control system of claim 1 further including signal means for defining said random access memory blocks as instruction space to permit diagnostic programs to be executed from said random access memory blocks.
5. The memory control system of claim 1 further including signal means for defining said read only storage memory blocks as data space to permit cyclic redundancy checking of the contents thereof for error.
US05/693,8161976-06-071976-06-07Memory control structure for a pipelined mini-processor systemExpired - LifetimeUS4095265A (en)

Priority Applications (6)

Application NumberPriority DateFiling DateTitle
US05/693,816US4095265A (en)1976-06-071976-06-07Memory control structure for a pipelined mini-processor system
FR7713453AFR2354597A1 (en)1976-06-071977-04-26 DATA PROCESSING SYSTEM
GB20890/77AGB1573539A (en)1976-06-071977-05-18Digital data processing apparatus
IT23790/77AIT1115319B (en)1976-06-071977-05-20 IMPROVED MEMORY
JP5946677AJPS52149445A (en)1976-06-071977-05-24Storage controller
DE19772723467DE2723467A1 (en)1976-06-071977-05-24 MEMORY CONTROL ARRANGEMENT

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US05/693,816US4095265A (en)1976-06-071976-06-07Memory control structure for a pipelined mini-processor system

Publications (1)

Publication NumberPublication Date
US4095265Atrue US4095265A (en)1978-06-13

Family

ID=24786235

Family Applications (1)

Application NumberTitlePriority DateFiling Date
US05/693,816Expired - LifetimeUS4095265A (en)1976-06-071976-06-07Memory control structure for a pipelined mini-processor system

Country Status (6)

CountryLink
US (1)US4095265A (en)
JP (1)JPS52149445A (en)
DE (1)DE2723467A1 (en)
FR (1)FR2354597A1 (en)
GB (1)GB1573539A (en)
IT (1)IT1115319B (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4174536A (en)*1977-01-211979-11-13Massachusetts Institute Of TechnologyDigital communications controller with firmware control
DE2944419A1 (en)1978-11-081980-05-14Data General Corp DIGITAL COMPUTER SYSTEM
US4234934A (en)*1978-11-301980-11-18Sperry Rand CorporationApparatus for scaling memory addresses
US4247893A (en)*1977-01-031981-01-27Motorola, Inc.Memory interface device with processing capability
WO1983000239A1 (en)*1981-06-291983-01-20Friends Amis IncComputer with expanded addressing capability
WO1983001133A1 (en)*1981-09-211983-03-31Racal Data Communications IncMicroprocessor with memory having interleaved address inputs and interleaved instruction and data outputs
US4390946A (en)*1980-10-201983-06-28Control Data CorporationLookahead addressing in a pipeline computer control store with separate memory segments for single and multiple microcode instruction sequences
US4575815A (en)*1982-10-121986-03-11International Computers LimitedData storage unit
US4630212A (en)*1982-11-291986-12-16Mitsubishi Denki K.K.Sewing machine with memory input reconfiguration based on type of memory being used
US4631659A (en)*1984-03-081986-12-23Texas Instruments IncorporatedMemory interface with automatic delay state
US4683551A (en)*1984-03-281987-07-28Minnesota Mining And Manufacturing CompanyRam clock switching circuitry for a laser beam printer
US4884198A (en)*1986-12-181989-11-28Sun Microsystems, Inc.Single cycle processor/cache interface
US4918587A (en)*1987-12-111990-04-17Ncr CorporationPrefetch circuit for a computer memory subject to consecutive addressing
US4918586A (en)*1985-07-311990-04-17Ricoh Company, Ltd.Extended memory device with instruction read from first control store containing information for accessing second control store
US4954946A (en)*1986-01-291990-09-04Digital Equipment CorporationApparatus and method for providing distribution control in a main memory unit of a data processing system
US5168558A (en)*1986-01-291992-12-01Digital Equipment CorporationApparatus and method for providing distributed control in a main memory unit of a data processing system
US5247636A (en)*1990-05-311993-09-21International Business Machines CorporationDigital processor clock circuit
US5280587A (en)*1992-03-311994-01-18Vlsi Technology, Inc.Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value
US5325513A (en)*1987-02-231994-06-28Kabushiki Kaisha ToshibaApparatus for selectively accessing different memory types by storing memory correlation information in preprocessing mode and using the information in processing mode
US5335337A (en)*1989-01-271994-08-02Digital Equipment CorporationProgrammable data transfer timing
US5537602A (en)*1988-09-161996-07-16Hitachi, Ltd.Process system for controlling bus system to communicate data between resource and processor
US6081904A (en)*1998-04-302000-06-27International Business Machines CorporationMethod for insuring data integrity during transfers
US6493775B2 (en)*1998-03-192002-12-10Fujitsu LimitedControl for timed access of devices to a system bus
US20040236896A1 (en)*2000-01-312004-11-25Ruban KanapathippillaiMemory with memory clusters for power reduction in an integrated circuit
KR100464034B1 (en)*2002-07-192005-01-03엘지전자 주식회사Method for clock synchronizing
US20060101246A1 (en)*2004-10-062006-05-11Eiji IwataBit manipulation method, apparatus and system
US20150048957A1 (en)*2013-08-132015-02-19SK Hynix Inc.Data input/output device and system including the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
GB2308469A (en)*1995-12-221997-06-25Motorola IncPower conserving clocking system

Citations (22)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US3535560A (en)*1967-06-091970-10-20NasaData processor having multiple sections activated at different times by selective power coupling to the sections
US3641328A (en)*1966-06-231972-02-08Hewlett Packard CoKeyboard entry means and power control means for calculator
US3659275A (en)*1970-06-081972-04-25Cogar CorpMemory correction redundancy system
US3688280A (en)*1970-09-221972-08-29IbmMonolithic memory system with bi-level powering for reduced power consumption
US3748653A (en)*1970-10-161973-07-24Honeywell Bull Soc IndMicroprogram memory for electronic computers
US3753232A (en)*1972-04-061973-08-14Honeywell Inf SystemsMemory control system adaptive to different access and cycle times
US3753242A (en)*1971-12-161973-08-14Honeywell Inf SystemsMemory overlay system
US3793631A (en)*1972-09-221974-02-19Westinghouse Electric CorpDigital computer apparatus operative with jump instructions
US3803554A (en)*1971-05-041974-04-09IbmApparatus for addressing an electronic data storage
US3806880A (en)*1971-12-021974-04-23North American RockwellMultiplexing system for address decode logic
US3813649A (en)*1972-09-011974-05-28Bradley Co AController program editor
US3821715A (en)*1973-01-221974-06-28Intel CorpMemory system for a multi chip digital computer
US3832694A (en)*1972-08-311974-08-27Ex Cell O CorpProcessor unit for data retrieval and processing
US3900836A (en)*1973-11-301975-08-19IbmInterleaved memory control signal handling apparatus using pipelining techniques
US3911424A (en)*1974-09-051975-10-07IbmAlphanumeric character display scheme for programmable electronic calculators
US3943495A (en)*1973-12-261976-03-09Xerox CorporationMicroprocessor with immediate and indirect addressing
US3959783A (en)*1973-12-271976-05-25Compagnie Internationale Pour L'informatiqueControl store unit addressing device
US3969724A (en)*1975-04-041976-07-13The Warner & Swasey CompanyCentral processing unit for use in a microprocessor
US3972028A (en)*1973-12-221976-07-27Olympia Werke AgData processing system including a plurality of memory chips each provided with its own address register
US3974479A (en)*1973-05-011976-08-10Digital Equipment CorporationMemory for use in a computer system in which memories have diverse retrieval characteristics
US3983544A (en)*1975-08-251976-09-28International Business Machines CorporationSplit memory array sharing same sensing and bit decode circuitry
US4025771A (en)*1974-03-251977-05-24Hughes Aircraft CompanyPipe line high speed signal processor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US3810110A (en)*1973-05-011974-05-07Digital Equipment CorpComputer system overlap of memory operation

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US3641328A (en)*1966-06-231972-02-08Hewlett Packard CoKeyboard entry means and power control means for calculator
US3535560A (en)*1967-06-091970-10-20NasaData processor having multiple sections activated at different times by selective power coupling to the sections
US3659275A (en)*1970-06-081972-04-25Cogar CorpMemory correction redundancy system
US3688280A (en)*1970-09-221972-08-29IbmMonolithic memory system with bi-level powering for reduced power consumption
US3748653A (en)*1970-10-161973-07-24Honeywell Bull Soc IndMicroprogram memory for electronic computers
US3803554A (en)*1971-05-041974-04-09IbmApparatus for addressing an electronic data storage
US3806880A (en)*1971-12-021974-04-23North American RockwellMultiplexing system for address decode logic
US3753242A (en)*1971-12-161973-08-14Honeywell Inf SystemsMemory overlay system
US3753232A (en)*1972-04-061973-08-14Honeywell Inf SystemsMemory control system adaptive to different access and cycle times
US3832694A (en)*1972-08-311974-08-27Ex Cell O CorpProcessor unit for data retrieval and processing
US3813649A (en)*1972-09-011974-05-28Bradley Co AController program editor
US3793631A (en)*1972-09-221974-02-19Westinghouse Electric CorpDigital computer apparatus operative with jump instructions
US3821715A (en)*1973-01-221974-06-28Intel CorpMemory system for a multi chip digital computer
US3974479A (en)*1973-05-011976-08-10Digital Equipment CorporationMemory for use in a computer system in which memories have diverse retrieval characteristics
US3900836A (en)*1973-11-301975-08-19IbmInterleaved memory control signal handling apparatus using pipelining techniques
US3972028A (en)*1973-12-221976-07-27Olympia Werke AgData processing system including a plurality of memory chips each provided with its own address register
US3943495A (en)*1973-12-261976-03-09Xerox CorporationMicroprocessor with immediate and indirect addressing
US3959783A (en)*1973-12-271976-05-25Compagnie Internationale Pour L'informatiqueControl store unit addressing device
US4025771A (en)*1974-03-251977-05-24Hughes Aircraft CompanyPipe line high speed signal processor
US3911424A (en)*1974-09-051975-10-07IbmAlphanumeric character display scheme for programmable electronic calculators
US3969724A (en)*1975-04-041976-07-13The Warner & Swasey CompanyCentral processing unit for use in a microprocessor
US3983544A (en)*1975-08-251976-09-28International Business Machines CorporationSplit memory array sharing same sensing and bit decode circuitry

Cited By (35)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4247893A (en)*1977-01-031981-01-27Motorola, Inc.Memory interface device with processing capability
US4174536A (en)*1977-01-211979-11-13Massachusetts Institute Of TechnologyDigital communications controller with firmware control
DE2944419A1 (en)1978-11-081980-05-14Data General Corp DIGITAL COMPUTER SYSTEM
US4316244A (en)*1978-11-081982-02-16Data General CorporationMemory apparatus for digital computer system
US4234934A (en)*1978-11-301980-11-18Sperry Rand CorporationApparatus for scaling memory addresses
US4390946A (en)*1980-10-201983-06-28Control Data CorporationLookahead addressing in a pipeline computer control store with separate memory segments for single and multiple microcode instruction sequences
WO1983000239A1 (en)*1981-06-291983-01-20Friends Amis IncComputer with expanded addressing capability
WO1983001133A1 (en)*1981-09-211983-03-31Racal Data Communications IncMicroprocessor with memory having interleaved address inputs and interleaved instruction and data outputs
US4575815A (en)*1982-10-121986-03-11International Computers LimitedData storage unit
US4630212A (en)*1982-11-291986-12-16Mitsubishi Denki K.K.Sewing machine with memory input reconfiguration based on type of memory being used
US4631659A (en)*1984-03-081986-12-23Texas Instruments IncorporatedMemory interface with automatic delay state
US4683551A (en)*1984-03-281987-07-28Minnesota Mining And Manufacturing CompanyRam clock switching circuitry for a laser beam printer
US4918586A (en)*1985-07-311990-04-17Ricoh Company, Ltd.Extended memory device with instruction read from first control store containing information for accessing second control store
US5168558A (en)*1986-01-291992-12-01Digital Equipment CorporationApparatus and method for providing distributed control in a main memory unit of a data processing system
US4954946A (en)*1986-01-291990-09-04Digital Equipment CorporationApparatus and method for providing distribution control in a main memory unit of a data processing system
US4884198A (en)*1986-12-181989-11-28Sun Microsystems, Inc.Single cycle processor/cache interface
US5325513A (en)*1987-02-231994-06-28Kabushiki Kaisha ToshibaApparatus for selectively accessing different memory types by storing memory correlation information in preprocessing mode and using the information in processing mode
US4918587A (en)*1987-12-111990-04-17Ncr CorporationPrefetch circuit for a computer memory subject to consecutive addressing
US5537602A (en)*1988-09-161996-07-16Hitachi, Ltd.Process system for controlling bus system to communicate data between resource and processor
US5335337A (en)*1989-01-271994-08-02Digital Equipment CorporationProgrammable data transfer timing
US5408641A (en)*1989-01-271995-04-18Digital Equipment CorporationProgrammable data transfer timing
US5247636A (en)*1990-05-311993-09-21International Business Machines CorporationDigital processor clock circuit
US5280587A (en)*1992-03-311994-01-18Vlsi Technology, Inc.Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value
US6493775B2 (en)*1998-03-192002-12-10Fujitsu LimitedControl for timed access of devices to a system bus
US6081904A (en)*1998-04-302000-06-27International Business Machines CorporationMethod for insuring data integrity during transfers
US20040236896A1 (en)*2000-01-312004-11-25Ruban KanapathippillaiMemory with memory clusters for power reduction in an integrated circuit
US20050076194A1 (en)*2000-01-312005-04-07Ruban KanapathippillaiUnified instruction pipeline for power reduction in a digital signal processor integrated circuit
US7233166B2 (en)2000-01-312007-06-19Intel CorporationBus state keepers
US7287148B2 (en)2000-01-312007-10-23Intel CorporationUnified shared pipeline allowing deactivation of RISC/DSP units for power saving
US7318115B2 (en)*2000-01-312008-01-08Intel CorporationIC memory complex with controller for clusters of memory blocks I/O multiplexed using collar logic
KR100464034B1 (en)*2002-07-192005-01-03엘지전자 주식회사Method for clock synchronizing
US20060101246A1 (en)*2004-10-062006-05-11Eiji IwataBit manipulation method, apparatus and system
US7334116B2 (en)2004-10-062008-02-19Sony Computer Entertainment Inc.Bit manipulation on data in a bitstream that is stored in a memory having an address boundary length
US20150048957A1 (en)*2013-08-132015-02-19SK Hynix Inc.Data input/output device and system including the same
US9013337B2 (en)*2013-08-132015-04-21SK Hynix Inc.Data input/output device and system including the same

Also Published As

Publication numberPublication date
IT1115319B (en)1986-02-03
FR2354597A1 (en)1978-01-06
JPS52149445A (en)1977-12-12
DE2723467A1 (en)1977-12-22
GB1573539A (en)1980-08-28
FR2354597B1 (en)1980-02-08

Similar Documents

PublicationPublication DateTitle
US4095265A (en)Memory control structure for a pipelined mini-processor system
US5615358A (en)Time skewing arrangement for operating memory in synchronism with a data processor
US5522064A (en)Data processing apparatus for dynamically setting timings in a dynamic memory system
US5802552A (en)System and method for allocating and sharingpage buffers for a flash memory device
US5226134A (en)Data processing system including a memory controller for direct or interleave memory accessing
US5276833A (en)Data cache management system with test mode using index registers and CAS disable and posted write disable
US3961251A (en)Testing embedded arrays
US4375678A (en)Redundant memory arrangement providing simultaneous access
US5555528A (en)Dynamic random access memory persistent page implemented as processor register sets
US5623620A (en)Special test modes for a page buffer shared resource in a memory device
EP0384620B1 (en)High performance memory system
US4933909A (en)Dual read/write register file memory
US7646649B2 (en)Memory device with programmable receivers to improve performance
US4891752A (en)Multimode expanded memory space addressing system using independently generated DMA channel selection and DMA page address signals
US6260107B1 (en)Processor system using synchronous dynamic memory
US5893135A (en)Flash memory array with two interfaces for responding to RAS and CAS signals
US5721868A (en)Rapid register file access by limiting access to a selectable register subset
US6011748A (en)Method and apparatus for built-in self test of integrated circuits providing for separate row and column addresses
US5555209A (en)Circuit for latching data signals from DRAM memory
US6128244A (en)Method and apparatus for accessing one of a plurality of memory units within an electronic memory device
US4583162A (en)Look ahead memory interface
KR19990083241A (en)Synchronous pipelined burst memory and method for operating same
US5047920A (en)Hierarchal system for reducing memory access time to plural equal sized memories by simultaneously addressing and accessing memory
US4333142A (en)Self-configurable computer and memory system
US5101339A (en)Computer address modification system using writable mapping and page stores

[8]ページ先頭

©2009-2025 Movatter.jp