WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
High speed signal conversion method and device    
United States Patent6020904   
Link to this pagehttp://www.wikipatents.com/6020904.html
Inventor(s)Clark; Iain (Newark, CA)
AbstractA random access memory has an access time which is longer than the period of read input signals, for example digital video data signals, such that it cannot respond directly to the input signals. The memory has two read address inputs and two outputs which are arranged as separate channels, each of which can access any location in the memory. The access time of the memory is shorter than two input signal periods. The input signals are applied alternatingly to the read address inputs, and output signals constituted by data stored at addresses corresponding to the input signals are produced at the memory outputs by an arrangement of clocked latches such that, although two input signal periods are used for accessing each memory location, the alternating accessing using two channels enables the memory to produce output signals having the same period (at the same frequency) as the input signals. Additional elements are provided to enable writing to the memory using the alternating channel arrangement, and also to enable memory locations to be unconditionally interrogated while responding to a stream of read input signals.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Inventor     Clark; Iain (Newark, CA)
Owner/Assignee     LSI Logic Corporation (Milpitas, CA)
Patent assignment
All assignments
Publication Date     February 1, 2000
Application Number     08/607,433
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     February 27, 1996
US Classification     345/554
Int'l Classification    
Examiner     Chow; Dennis-Doon
Assistant Examiner    
Attorney/Law Firm    
Address
Parent Case     This application is a continuation of U.S. patent application Ser. No. 08/161,729, filed Dec. 3, 1993, now U.S. Pat. No. 5,504,503, issued Apr. 2, 1996.
Priority Data    
USPTO Field of Search     365/230.04 365/230.05 365/230.08 365/230.09 365/189.05 345/185 345/189 345/186 345/190 345/200 345/507 345/509 345/515 345/516 345/517 345/518 395/507 395/509 395/515 395/516 395/517 395/518
Patent Tags     high speed signal conversion
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5283866
Kumagai

Feb,1994

[0 after 0 votes]
5276803
Iwase

Jan,1994

[0 after 0 votes]
5269003
Roskowski et al.

Dec,1993

[0 after 0 votes]
5220312
Lumelsky et al.

Jun,1993

[0 after 0 votes]
5204664
Hamakawa

Apr,1993

[0 after 0 votes]
5163024
Heilveil et al.

Nov,1992

[0 after 0 votes]
5097256
Eldridge et al.

Mar,1992

[0 after 0 votes]
4905189
Brunolli

Feb,1990

[0 after 0 votes]
4894653
Frankenbach

Jan,1990

[0 after 0 votes]
4860263
Mattausch

Aug,1989

[0 after 0 votes]
4849937
Yoshimoto

Jul,1989

[0 after 0 votes]
4791580
Sherrill et al.

Dec,1988

[0 after 0 votes]
4742350
Ko et al.

May,1988

[0 after 0 votes]
4503429
Schreiber

Mar,1985

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


We claim:

1. A device for converting a sequence of signal values, comprising:

a memory having at least two inputs and at least two outputs;

first and second input latches having inputs coupled to receive a first input signal and outputs coupled to respective inputs of said memory;

at least two output latches having inputs coupled to respective memory outputs

a first multiplexer having at least two inputs coupled to respective outputs of said output latches,

wherein values of said signal are alternatingly latched by said input latches, converted in said memory, latched by said output latches and provided at an output of said first multiplexer,

a second multiplexer having at least two inputs coupled to said first input signal and to a second input signal and having an output coupled to inputs of said input latches;

wherein said memory may selectively convert a value from one of said input signals;

a third multiplexer having at least two inputs coupled to respective outputs of said output latches, wherein values are read from said memory and are provided at said output of said third multiplexer;

a read latch having an input coupled to said output of said third multiplexer wherein values are read from said memory and are stored in said read latch for subseguent output; and

a memory interrogator for unconditionally interrogating said memory by controlling said first multiplexer to repeat coupling the output of one of said output latches which is latching said first input signal to said output while controlling said third multiplexer to couple the output of the other of said output latches which is latching said second input signal to said read latch.

2. The device of claim 1, wherein:

a first of said input latches responds to a first timing pulse; and

a second of said input latches responds to a second timing pulse differing from said first timing pulse.

3. The device of claim 1, wherein:

a first of said output latches responds to a first timing pulse; and

a second of said output latches responds to a second timing pulse differing from said first timing pulse.

4. The device of claim 1, wherein one of the inputs of the first multiplexer is selectively coupled to one of the outputs of the output latches in response to a select pulse.

5. The device of claim 1, wherein:

a first of said input latches responds to a first timing pulse; and

a second of said input latches responds to a second timing pulse 180 degrees out of phase with said first timing pulse.

6. The device of claim 1, wherein said memory further includes a write input for writing values to said memory.

7. The device of claim 1, wherein said memory further comprises at least two parallel memory access channels.

8. The device of claim 1, wherein said memory further includes:

a plurality of storage locations wherein any location is addressable by said memory inputs and wherein the value stored in said storage locations may be provided as output to any of said memory outputs.

9. A device for transforming a sequence of signal values, comprising:

a memory having two inputs and two outputs;

two input latches having outputs coupled to said memory inputs;

two output latches having inputs coupled to said memory outputs;

a first multiplexer having at least two inputs coupled to respective outputs of said output latches

a second multiplexer having two inputs respectively coupled to a first input signal and to a second input signal and having an output coupled to an input of said input latches;

wherein a first of said input latches responds to a first timing pulse, a second of said input latches responds to a second timing pulse 180 degrees out of phase with said first timing pulse, and said memory may selectively convert a value from one of said input signals;

a third multiplexer having two inputs respectively coupled to said outputs of said output latches;

a read latch having an input coupled to said output of said third multiplexer; and

a memory interrogator for unconditionally interrogating said memory while the device is receiving said first input signal by controlling said first multiplexer to repeat coupling the output of one of said output latches which is latching said first input signal to said output while controlling said third multiplexer to couple the output of the other of said output latches which is latching said second input signal to said read latch.

10. A random access memory device, comprising:

a random access memory having at least two inputs and at least two outputs;

first and second input latches having inputs coupled to receive a first input signal;

at least two output latches having inputs coupled to respective memory outputs;

a first multiplexer having at least two inputs coupled to respective outputs of said output latches wherein values of said signal are alternatingly latched by said input latches, stored in said memory, latched by said output latches and provided at an output of said first multiplexer;

a second multiplexer having at least two inputs coupled to said first input signal and to a second input signal and having an output coupled to inputs of said input latches, said second multiplexer selectively coupling one of said input signals to said output wherein said memory may selectively store a value from one of said input signals;

a third multiplexer having at least two inputs coupled to respective outputs of said output latches wherein values are read from said memory and are provided at said output of said third multiplexer;

a read latch having an input coupled to said output of said third multiplexer; wherein values are read from said memory and are stored in said read latch for subsequent output; and

a memory interrogator for unconditionally interrogating said memory while the device is receiving said first input signal by controlling said first multiplexer to repeat coupling the output of one of said output latches which is latching said first input signal to said output while controlling said third multiplexer to couple the output of the other of said output latches which is latching said second input signal to said read latch.

11. The device of claim 10, wherein:

a first of said input latches responds to a first timing pulse; and

a second of said input latches responds to a second timing pulse differing from said first timing pulse.

12. The device of claim 10, wherein:

a first of said output latches responds to a first timing pulse; and

a second of said output latches responds to a second timing pulse differing from said first timing pulse.

13. The device of claim 10, wherein said select pulse is synchronized with said input latch timing pulses.

14. The device of claim 10, wherein:

a first of said input latches responds to a first timing pulse; and

a second of said input latches responds to a second timing pulse 180 degrees out of phase with said first timing pulse.

15. The device of claim 10, wherein said memory further includes a write input for writing values to said memory.

16. The device of claim 10, wherein said memory further comprises at least two parallel memory channels.

17. The device of claim 10, wherein said memory further includes:

a plurality of storage locations wherein any location is addressable by said memory inputs and wherein the value stored in said storage locations may be provided as output to any of said memory outputs.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method and apparatus for converting an input signal to an output signal at a high rate of speed, and, more particularly, to a method and apparatus for accessing values in a memory device at high rates of speed.

2. Description of Related Art

In the field of information processing it is highly desirable to convert or transform a signal from one form to another at a high rate of speed. A signal is often represented by a stream of data and arrives at an input to the information processing system. Each datum in the stream often arrives at the input at a fixed time period after the preceding datum has arrived. The shorter the period is between incoming data, the higher the rate is of the data stream.

The data stream can also be considered as a time sequence of values arriving at the input to the information processing device. When a stream of incoming data arrives at an input to an information processing system at a high rate, it is often advantageous to convert or transform that data to an output at an equally high rate. Usually, at least one output stream of data is desired at a rate substantially equal to the input rate.

One example of a system wherein high conversion rates are desired is in a color-enhancement system for conventional video displays. The image on the video display is composed of many points known as pixels. Each pixel is displayed according to data indicating its position on the display screen and the color to be displayed at that position. The image is composed by updating the display screen frequently using data provided for each pixel. Color-enhancement usually is accomplished by expanding the number of bits used to designate color data for each pixel.

In many conventional video display systems, pixel color data is composed of 8-bits of digital information, which allow for the potential to display 256 different colors at that pixel position. In order to enhance the quality of the displayed image, a practice has developed of expanding, in a conversion or transformation, the number of pixel color data bits, to, for example, 18 or 24 bits per pixel. Although such a practice results in an enhanced color image, difficulties and limitations are encountered in its implementation.

A significant limitation is that the conversion device requires a relatively long amount of time to effect a conversion, or, in this case, a bit-length expansion. This has required the makers of color enhancement systems to limit the rate of the incoming color pixel data stream to accommodate a slow conversion device. Slowing down the data stream means that the pixel information in the video display cannot be sent to the display screen as frequently, thereby limiting the image quality.

One of the most commonly used types of conversion devices is a Random Access Memory (RAM). In a RAM, data values are stored in a number of locations commonly referred to as addresses. Each address or location holds one data value. An input signal to the RAM, commonly referred to as an address signal, indicates which data value will be made available by the RAM on its output line as an output signal. The RAM effects a conversion by accepting an address input value, pointing to or selecting a stored data value in a memory location based on the address input value, and by outputting the data value stored in the selected memory location. The time it takes for the RAM to convert an address input to a valid data signal value is usually referred to as an access time.

Returning to the video display example, one color-enhancement scheme makes use of a RAM with an 8-bit address input capable of addressing or pointing to 256 (2.sup.8) separate memory locations. The RAM can be built to store and output data values having virtually any bit-length, such as 18 or 24 bits. By storing appropriate data values in each memory location, the RAM is capable of converting 8-bits of input data to, for example, 18 or 24 bits of output data. Ordinarily, a conventional video display is configured to accept 8-bits of incoming color data per pixel in a data stream. The video display can be reconfigured to accept an expanded number of bits, such as 18 or 24, in an incoming data stream. A RAM is interposed between the video display and the incoming 8-bit data stream so that the incoming 8-bit data stream becomes an address input to the RAM. The address input is used to access an appropriate expanded value, stored in a memory location or address, and to use that value as output to the video display.

Hence, the video display accepts more color information per pixel, increasing the image quality of the displayed image. However, the period between incoming data values in the data stream must not exceed the access time of the RAM, or erroneous conversions will occur, scrambling the image. In other words, the rate of incoming data must be decreased to accommodate the RAM access time to maintain image integrity. This limits the quality of the image capable of being displayed by the video display.

The display of a video image is just one example of an information processing application which requires a conversion of a signal from one form to another at a high rate of speed. Many other situations are encountered where a conversion device, such as a RAM, requires a conversion time which exceeds the potential period between incoming data in a data stream, so that accurate conversion is not possible without slowing down the incoming data stream. A common solution in such situations has been to slow down the data stream to accommodate a slow conversion device.

Various references discuss the rate of image generation in a video display device. However, the general problem of having to accommodate a relatively slow access device has not been adequately resolved by these references.

For example, U.S. Pat. No. 4,905,189, issued to Brunolli, discloses a system for synchronously reading information from a RAM device on a fast port independently of the devices ability to asynchronously read or write information to the RAM on a slow port. Information is read out of the memory and evaluated using two alternatingly switched channels to increase the evaluation speed.

This reference does not effectively address the problem of converting values in an incoming data steam at a relatively high rate using a conversion device having a high conversion or access time, utilizing external timing control elements. It merely teaches how to increase the evaluation speed of data after it has been read out of the device.

Another example, U.S. Pat. No. 4,742,350, issued to Ko et al., discloses a system for displaying an image using picture data, attribute data, and synchronization data, wherein the attribute data includes embedded synchronization data.

U.S. Pat. No. 4,791,580, issued to Sherrill et al., discloses multiple color map memories to quickly store color map information during display line retrace intervals. This primarily involves a scheme for quickly writing data into multiple color map RAM memories, included in a display processor, from a video RAM (VRAM) memory.

U.S. Pat. No. 5,163,024, issued to Heilveil et al., discloses a video memory device employing a bit-mapped RAM unit, a serial shift register and appropriate decode circuitry to enable a single video memory to be used with displays using various numbers of bit resolution.

Although teaching the principles of data storage and retrieval in a random access memory, the prior art, as represented by these references, does not effectively address the problem of converting values in a data stream at a relatively high rate using a conversion device having a high conversion time.

SUMMARY OF THE INVENTION

The present invention effectively overcomes the problem discussed above which has remained unsolved in the prior art. More specifically, a device and method of the invention enable a random access memory having an access time which is ordinarily too long to effectively process input data and perform conversions thereon, to accomplish this task.

In accordance with the invention, a random access memory has an access time which is longer than the period of read input signals, for example digital video data signals, such that it cannot respond directly to the input signals. The memory has two read address inputs and two outputs which are arranged as separate channels, each of which can access any location in the memory. The access time of the memory is shorter than two input signal periods.

The input signals are applied alternatingly to the read address inputs, and output signals constituted by data stored at addresses corresponding to the input signals are produced at the memory outputs by an arrangement of clocked latches such that, although two input signal periods are used for accessing each memory location, the alternating accessing using two channels enables the memory to produce output signals having the same period (at the same frequency) as the input signals.

Additional elements are provided to enable writing to the memory using the alternating channel arrangement, and also to enable memory locations to be read by the cpu 12 while color conversion is occurring.

The present invention also comprises a method of converting input values in a time sequence of signal values into a time sequence of output values. The method comprises the steps of temporarily storing a first input value in a time sequence of signal values, temporarily storing a second input value in the time sequence of signal values, initiating conversion of the first stored input value, initiating conversion of the second stored input value before completion of the first conversion, temporarily storing a converted output value of the first input value, temporarily storing a converted output value of the second input value, and selectively coupling to an output the stored converted output values of the first and second input values so as to provide a time sequence of converted output values.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the present high speed signal conversion device in the context of a system for enhancing color in video display image.

FIG. 2 shows a timing diagram of data flow in the present high speed signal conversion device for converting an input sequence of values to an output sequence of values.

FIG. 3(a) shows a timing diagram of timing signals for the present high speed signal conversion device.

FIG. 3(b) shows a timing diagram of timing signals for effecting a read operation in the present high speed signal conversion device.

FIG. 4 shows a timing diagram of data flow during a read operation in the present high speed signal conversion device.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring to FIG. 1 of the drawings, in one typical operating environment, a high speed signal conversion device 10 in accordance with the present invention can enhance the quality of an image displayed on a conventional video display. The operating environment depicted in FIG. 1 is of a computer controlled video display device, and shows conventional computer or central processing unit (CPU) 12, video controller 14, display memory 16, digital-to-analog conversion device 18 and video display 20, in addition to the present high speed signal conversion device 10.

In conventional fashion, video controller 14 is operatively connected to video RAM 16 and to CPU 12. Digital-to-analog conversion device 18 is operably connected to video display 20, also in conventional fashion. High speed signal conversion device 10 connects between video controller 14 and digital-to-analog conversion device 18, and replaces conventional devices for effecting an expansion of the number of color bits used to provide color information for a pixel in a video display 20.

In the context of this typical environment, high speed signal conversion device 10 accepts an input time sequence of values, or a data stream, typically comprising 8-bit digital values, over color data bus 42 from video controller 14. Each digital value in the data stream comprises 8-bits of color information, or an 8-bit color value, which provides color information for a pixel displayable in an image on the video display 20.

High speed signal conversion device 10 converts 8-bit color values at a substantially high rate, expanding the number of bits available to provide color information to, for example, 18-bits per pixel. By using high speed signal conversion device 10, the frequency of the incoming (and outgoing) time sequence of data values can be increased, for example, from 80 MHz-90 MHz to 160 MHz-170 MHz, when utilizing a memory device 22 with an access time of approximately 4 ns-5 ns, nominal, and approximately 10 ns worst case.

One of ordinary skill in the art will appreciate that the designation, interconnection, and operation of the conventional elements listed above is susceptible to many different forms of implementation, and in no way limits the scope of the present invention. Furthermore, the block diagrams shown in FIG. 1 merely illustrate the functions performed and should not be construed as limiting the possible applications of the present invention to any specific environment. Thus, by way of example, display memory 16 could be either some form of RAM or ROM memory. Similarly, if desired, all of the CPU, video controller, and memory could be embodied in a single circuit. Alternatively, the CPU 12 may be embodied in a single integrated circuit with conventional dynamic random access memory (DRAM) employed as the display memory 16 thus applicants do not regard their invention as being limited to any specific embodiment of these conventional elements. A detailed discussion of the high speed conversion device 10 of the present invention follows.

Still referring to FIG. 1, one preferred embodiment of the high speed conversion device 10 comprises a memory device 22, first and second input latches 24 and 26, first and second output latches 28 and 30, and a first multiplexer 32. The device 10 can further include a second multiplexer 34, an address module 36, a third multiplexer 38 and a read latch 40. A timing module 92 is also shown.

Memory device 22 preferably is a RAM and includes at least two inputs, or address ports (AD1 and AD2), and at least two outputs, or data ports (OD1 and OD2). The memory device 22 may further include a write address port (WAD), a write data port (WD), and a write enable control (WE). Memory device 22 may, in alternative embodiments, comprise any type of digital storage device, such as, for example, a read only memory (ROM). Memory device 22 contains a plurality of stored digital values which are selectable for output on the data ports based on input values on the address ports.

Memory device 22 is of conventional design such that any and all storage locations (addresses) are addressable on either address port AD1 or AD2, and such that the data stored in any address location may be simultaneously output to either data port OD1 or OD2. The address port AD1 and output OD1 constitute a first memory channel, whereas the address port AD2 and output OD2 constitute a second memory channel.

Thus, inputs to AD1 at a particular time cause a particular stored data value to be output at OD1 at a later time which depends on the access or conversion time of memory device 22. Similarly, inputs to AD2 at a particular time cause a particular stored data value to be output at OD2 at a later time which depends on the access or conversion time of memory device 22. The two input-output channels just described operate independently from each other and can therefore simultaneously access the stored data values.

A preferred example of a two-port RAM memory device which is commercially available as an off-the-shelf item and can be directly utilized as the memory device 22 is the Model IDT7130SA/LA, IDT7140SA/LA, CMOS DUAL-PORT RAMS 8K (1K.times.8-BIT), manufactured by Integrated Device Technology Inc., Santa Clara, Calif., as described in a data sheet published in December 1987.

The first and second input latches 24 and 26, as well as first and second output latches 28 and 30, each preferably have at least one input and at least one output, and each respond to a timing pulse at a control input. Respectively, on the occurrence of an appropriate timing pulse, a digital value presented at the latch input is provided at the latch output. Preferably, the input and output latches are conventional edge-triggered flip-flop type devices. Alternatively, the input and output latches may be conventional level-sensitive, or transparent, latches.

First (input) multiplexer 34, second (output) multiplexer 32, and third (read) multiplexer 38, are conventional multiplexers each including at least two data inputs, one output, and a select input. Each multiplexer respectively provides a data value at a single input to its output in response to a value, or select pulse, presented to its select input.

Read latch 40 preferably includes at least one input and at least one output, and responds to a timing pulse at a control input. On the occurrence of an appropriate timing pulse, a digital value presented at the latch input is provided at the latch output. Preferably, the read latch 40 is a conventional edge-triggered flip-flop type device. Alternatively, it may be a conventional level-sensitive, or transparent, latch. In an alternative preferred embodiment, the read latch 40 may further include a conventional double-buffered, or multistage-buffered, arrangement, so that it may respectively accept and store previous data values and new data values in each stage-buffer. Read latch 40 may also accept as input a byte-select signal, as part of R/W control bus 70, so that a subset of the digital bits stored therein may be selected for output on read/write interface bus 62.

Address module 36 is preferably included in an embodiment of the present high speed conversion device 10. Address module 36 comprises conventional digital circuitry, and includes a read input 64 (RD), a write input 66 (WR), and an input/output address input 120 (I/O ADD) for controlling the read/write mode of operation within the address module 36, a pixel clock timing input (PCLK), and a read/write data input (R/W DATA) for accepting read or write input data from the video controller 14, or, indirectly, from the CPU 12. Address module 36 provides as output a read output (RD), a read/write address output (R/W ADD), and a read/write control output (R/W).

Timing module 92 comprises conventional digital circuitry and preferably includes a pixel clock timing input (PCLK) and preferably includes a read input (RD). Timing module 92 preferably provides phase timing pulse outputs (B/D and C/E) and first select pulse output (F). The timing module 92 can also provide second timing pulse output (H) and second select pulse output (G).

Still referring to FIG. 1, memory device 22 connects at a first address port AD1 to an output of first latch 24 over a first input channel 76. Memory device 22 connects at a second address port AD2 to an output of second input latch 26 over second input channel 78. First and second input channels 76 and 78 preferably comprise 8-bit paths.

Similarly, memory device 22 connects at a first data port OD1 to an input of output latch 28 over first output channel 80 and connects at a second data port OD2 to an input of output latch 30 over second output channel 82. First and second output channels 80 and 82 preferably comprise 18-bit paths.

First input latch 24 and second input latch 26 are respectively connected, at an input, to common input channel 74. Common input channel 74, first input latch 24, and second input latch 26 all preferably comprise 8-bits.

First output latch 28 and second output latch 30 connect at an output to an input of first multiplexer 32 over first and second latched output channels 84 and 86, respectively. Both output latches 28 and 30 and the first multiplexer 32, as well as the latched output channels 84 and 86, preferably comprise 18-bits. The output of first multiplexer 32 is provided on converted output channel 94, which preferably comprises 18-bits.

The timing module 92 connects at an input to a clock output of video controller 14 over pixel clock line 72. Timing module 92 also connects at a first phase output (B/D) to a timing pulse input of first input latch 24 over a first phase timing pulse line 46 and to a timing pulse input of first output latch 28 over a first phase timing pulse line 50. Second input latch 26 and second output latch 30 also connect at a respective timing pulse input to a second phase output (C,E) of timing module 92 over second phase timing pulse lines 48 and 52. Finally, timing module 92 connects at a first select output (F) to a select input of first (output) multiplexer 32 over first select pulse line 54.

In operation, the present invention provides for an input signal arriving at a high rate to be converted to an output signal at a same rate, even though a conversion device is used with an access time ordinarily too long (slow) to operate properly at such a high rate. In particular, input signal rates substantially in excess of 160 MHz-170 MHz are achievable when a memory device 22 is used having a nominal access time of approximately 4 nS-5 nS (nanoseconds) and a worst case access time of approximately 10 nanoseconds.

Operation of the invention proceeds with reference to FIGS. 1 and 2. A pixel clock signal, carried on pixel clock line 72, is generated in the video controller 14 and controls the frequency of transmission of pixel information in the overall video display system. In this embodiment a period, or cycle, of the pixel clock preferably begins on each rising edge and concludes on the next rising edge of the pixel clock signal.

Input data values on common input channel 74 arrive in synchronized relationship with the periods of the pixel clock, as shown in FIG. 2. Hence, a time sequence of data values is presented at an input to high speed signal conversion device 10, at a frequency of approximately 160-170 Megahertz.

On a first rising edge of the pixel clock a first data value ID.sub.1 is valid on common input channel 74. On a second rising edge of the pixel clock a second data value ID.sub.2 is valid on common input channel 74, and so forth as indicated in FIG. 2. Timing module 92 generates, in a conventional manner, a first phase timing pulse and a second phase timing pulse each having a frequency which is one-half the frequency of the pixel clock, respectively shown in FIG. 3 at numerals 46, 50 and 48, 52.

Also, the first and second phase timing pulses are 180 degrees out of phase with each other. Finally, the timing pulse signals are slightly delayed with respect to the pixel clock so that valid data values are present on common input line 74 whenever a rising edge-transition occurs on the pixel clock, and so that either the first phase signal is high or the second phase signal is high during a given rising edge-transition of the pixel clock. This scheme uses the first and second phase signal levels to enable the first input latch 24 or the second input latch 26 on alternate data values in the incoming data sequence. The first phase timing pulse signal appears on lines 46 and 50, while the second phase timing pulse signal appears on lines 48 and 52. Alternatively, the latches 24 and 26 could be edge triggered by an edge-transition of the first or second phase timing signals, respectively.

First input latch 24 and second input latch 26 each capture, or latch, alternate values from common input line 74 in response to rising edge-transitions of the pixel clock, enabled by a high logic level of either first phase timing pulse line 46 or second phase timing pulse line 48. With reference to FIG. 2, the arrangement of the pixel clock periods and phase timing pulses is such that, during a first period of the pixel clock, a first data value ID.sub.1 is latched from common input line 74 into first input latch 24. During a second period of the pixel clock, a second data value ID.sub.2 is latched from common input line 74 into second input latch 26. In this fashion, the first and second input latches 24 and 26 alternatingly latch odd and even numbers of data values from the input time sequence of data values.

Once latched, a data value is provided at the outputs of first and second input latches for two cycles of the pixel clock, as shown in FIG. 3. In particular, reference is made to the signal appearing on first input channel 76 and second input channel 78, which prolong the availability of data values ID.sub.x at the address ports AD1 and AD2 of memory device 22.

Memory device 22 has an access or conversion time associated with a data value conversion in each channel. A first channel access or conversion time 104 and a second channel access or conversion time 106 are shown in FIG. 2. The access or conversion time is the time it takes before valid output data appears at a memory device 22 data port OD1 or OD2, after receiving a valid address port input value at AD1 or AD2, respectively.

In FIG. 2, access or conversion operations within memory device 22 are shown by vertical arrows 96, 98, 100, and 102. The access or conversion operations 96, 98, 100, and 102 respectively terminate with a valid output data value OD.sub.1, OD.sub.2, OD.sub.3, and OD.sub.4 appearing on first and second output channels 80 and 82 at the conclusion of an access or conversion time 104 or 106. Also, the conversions for odd and even values are time-staggered in the two channels.

From FIG. 2 it can be seen that access or conversion times 104 and 106 both exceed the time of a single pixel clock period. This means that the input time sequence of values is changing at a rate which is faster than a rate at which memory device 22 would ordinarily be able to properly convert the values to valid output data. The latching and timing scheme herein discussed allows for the conversion of values at a rate in excess of the conversion rate in either channel of memory device 22.

Converted output values are latched in a similar manner. First output latch 28 and second output latch 30 each capture, or latch, a value from respective data ports OD1, OD2 of memory device 22 over first output channel 80 and second output channel 82, in response to a rising edge-transition of the pixel clock, in conjunction with the signal levels on first phase timing pulse line 50 and on second phase timing pulse line 52. With reference to FIG. 2, it is seen that output data values are respectively latched into first and second output latches 28 and 30 a fixed number of pixel clock periods (two cycles) after input data values are latched in first and second input latches 24 and 26. In this fashion, the first and second input latches 24 and 26, and the first and second output latches 28 and 30, alternatingly latch odd and even numbers of data values.

Once latched, an output data value is provided at the outputs of first and second output latches 28 and 30 for two cycles of the pixel clock, as shown in FIG. 2. In particular, reference is made to the signal appearing on first latched output channel 84 and second latched output channel 86, which prolong the availability of output data values OD.sub.x at the respective inputs to first multiplexer 32.

Timing module 92 also generates, in conventional fashion, a first select pulse signal which is provided to a select input of first multiplexer 32 on first select pulse line 54. Referring to FIG. 3, the first select pulse signal on select pulse line 54 is preferably generated to be one-half the frequency of the pixel clock and preferably has level-transitions in phase with pixel clock transitions.

The application of the first select pulse signal to first multiplexer 32 results in an output time sequence of converted values being provided at converted output channel 94 at the same rate as the incoming input time sequence of data values, despite an access time in memory device 22 which ordinarily would prevent proper conversions at such rates. This is accomplished by responding to read input signals in time alternating relation using the two memory channels.

Summarizing briefly the above operation with reference to FIG. 2, during a first period of the pixel clock, the first input value (ID.sub.1) is latched into a first input latch, the first input value (ID.sub.1) is presented to memory input at the output of the first latch and memory device 22 begins the process of converting the first input value (ID.sub.1) to a first output value (OD.sub.1) which requires an access time 104.

During a second period of the pixel clock, the second value (ID.sub.2) is latched into a second input latch, the first input value (ID.sub.1) continues to be presented to memory input at the output of the first latch, memory device 22 completes the process of converting the first input value (ID.sub.1) to a first-output value (OD.sub.1) at the end of access time 104, and memory device 22 begins the process of converting the second input value (ID.sub.2) to a second output value (OD.sub.2) which requires access time 106.

During a third period of the pixel clock, the third input value (ID.sub.3) is latched into the first input latch, the first output value (OD.sub.3) is latched into a first output latch, the second input value (ID.s