← Back to Patent Explorer
US4862407A Expired / Lapsed US ⏱️ 0.0 years remaining

Digital signal processing apparatus

Assignee: Motorola Solutions Inc
•
Filing: 1987-10-05
•
Granted: 1989-08-29
•
Expires: 2007-10-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A digital signal processing apparatus having a host processor interfaced to a plurality of signal processing coprocessors through dual port memory elements is disclosed. Coprocessors represent microcoded machines wherein low level instructions directed toward the mechanics of performing a specific signal processing algorithm are contained in microcode. Thus, the host processor programs coprocessors using higher level functional instructions. Each of the coprocessors has a multiply-accumulator, a barrel shifter, an address generator, a hardware loop counter, and a microsequencer.

Inventors

  • 👤 Bruce A. Fette
  • 👤 Leslie K. Lewis
  • 👤 Marc L. Briel
  • 👤 Thomas J. Makovicka

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 21:23
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3877; G06F9/22; G06F9/226

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 169 words
A digital signal processing apparatus comprising: a host processor having a data bus and an address bus; first and second dual port memory elements, wherein each of said memory elements has first and second data and address interfaces, said first data interfaces of said first and second memory elements being coupled to said host processor data bus, and said first address interfaces of said first and second memory elements being coupled to said host processor address bus; and first and second coprocessors each being for performing predetermined arithmetic functions required by digital signal processing applications, and each having a data bus and a data address bus, said first coprocessor data bus being coupled to said first memory element second data interface, said first coprocessor data address bus being coupled to said first memory element second address interface, said second coprocessor data bus being coupled to said second memory element second data interface, and said second coprocessor data address bus being coupled to said second memory element second address interface.
Claim 2
Dependent Claim 169 words
A digital signal processing apparatus comprising: a host processor having a data bus and an address bus; first and second dual port memory elements, wherein each of said memory elements has first and second data and address interfaces, said first data interfaces of said first and second memory elements being coupled to said host processor data bus, and said first address interfaces of said first and second memory elements being coupled to said host processor address bus; and first and second coprocessors each being for performing predetermined arithmetic functions required by digital signal processing applications, and each having a data bus and a data address bus, said first coprocessor data bus being coupled to said first memory element second data interface, said first coprocessor data address bus being coupled to said first memory element second address interface, said second coprocessor data bus being coupled to said second memory element second data interface, and said second coprocessor data address bus being coupled to said second memory element second address interface.
Claim 3
Dependent Claim 71 words
An apparatus as claimed in claim 1 wherein said first coprocessor comprises: a first data register having an input coupled to said first coprocessor data bus and an output; a second data register having an input coupled to said first coprocessor data bus and an output; and a multiplier-accumulator having a first input coupled to said first data register output and a second input coupled to said second data register output.
Claim 4
Dependent Claim 122 words
An apparatus as claimed in claim 2 wherein said first coprocessor comprises: a microsequencer having an output coupled to said first and second data registers, said microsequencer being for controlling a sequence of coprocessor micro-operations so that a predetermined digital signal processing function may be performed on data contained within said first dual port memory; and an address generator having an input coupled to said microsequencer output and an output coupled to said first coprocessor data address bus, said address generator being for generating an address of a data word within said first dual port memory during a first micro-operation, whereafter said microsequencer causes said multiplier-accumulator to operate upon the data word during a second micro-operation which occurs after the first micro-operation.
Claim 5
Dependent Claim 99 words
An apparatus as claimed in claim 3 wherein said address generator comprises: an arithmetic unit having a first input coupled to said first coprocessor data address bus, a second input, and a output; means for generating at least one constant digital value, said generating means having a control input coupled to said microsequencer output and an output coupled to said arithmetic unit second input; and a plurality of registers each having a first input coupled to said arithmetic unit output, a control input coupled to said microsequencer output, and an output coupled to said first coprocessor data address bus.
Claim 6
Dependent Claim 62 words
An apparatus as claimed in claim 4 wherein said address generator additionally comprises means for transferring data between said first coprocessor data bus and said first coprocessor data address bus, said transferring means having an input coupled to said first coprocessor data bus, a control input coupled to said microsequencer output, and an output coupled to said first coprocessor data address bus.
Claim 7
Dependent Claim 63 words
An apparatus as claimed in claim 3 wherein said host processor has an interrupt input and a programmable output bit output, and said first coprocessor comprises means for synchronizing operation of said microsequencer with operation of said host processor, said synchronizing means having an input coupled to said host processor programmable output bit and an output coupled to said host processor interrupt input.
Claim 8
Dependent Claim 41 words
An apparatus as claimed in claim 3 wherein said microsequencer has a jump control input, and said first coprocessor additionally comprises a loop counter having an input coupled to said microsequencer output and an output coupled to microsequencer jump control input.
Claim 9
Dependent Claim 88 words
An apparatus as claimed in claim 7 wherein said loop counter comprises: an arithmetic unit having first and second inputs and an output; means for generating at least one constant value, said generating means having a control input coupled to said microsequencer output and an output coupled to said arithmetic unit first input; and a plurality of registers each having a data input coupled to said arithmetic unit output, a control input coupled to said microsequencer third output, and an output coupled to said arithmetic unit second input.
Claim 10
Dependent Claim 60 words
An apparatus as claimed in claim 8 wherein said loop counter additionally comprises means for transferring data between said first coprocessor data bus and said arithmetic unit first input, said transferring means having an input coupled to said first coprocessor data bus, a control input coupled to said microsequencer output, and an output coupled to said arithmetic unit first input.
Claim 11
Dependent Claim 44 words
An apparatus as claimed in claim 3 additionally comprising a barrel shifter having a data input coupled to said first coprocessor data bus, a control input coupled to said microsequencer control output, and a shift output coupled to said first coprocessor data address bus.
Claim 12
Dependent Claim 56 words
An apparatus as claimed in claim 10 additionally comprising means for operating in a one of a normalizing mode and a straight shifting mode, said operating means having a data input coupled to said first coprocessor data bus, a control input coupled to said microsequencer output, and an output coupled to said barrel shifter control input.
Claim 13
Independent Claim 122 words
A method of processing first and second portions of digital representations of analog signals, said method comprising the steps of: making the first and second portions available to a host processor; transferring the first portion from the host processor through a first port of a first dual port memory to the first dual port memory; transferring the second portion from the host processor through a first port of a second dual port memory to the second dual port memory; operating on the first portion using a first coprocessor which couples to a second port of the first dual port memory; and operating on the second portion using a second coprocessor which couples to a second port of the second dual port memory.
Claim 14
Independent Claim 122 words
A method of processing first and second portions of digital representations of analog signals, said method comprising the steps of: making the first and second portions available to a host processor; transferring the first portion from the host processor through a first port of a first dual port memory to the first dual port memory; transferring the second portion from the host processor through a first port of a second dual port memory to the second dual port memory; operating on the first portion using a first coprocessor which couples to a second port of the first dual port memory; and operating on the second portion using a second coprocessor which couples to a second port of the second dual port memory.
Claim 15
Dependent Claim 100 words
A method as claimed in claim 12 wherein said operating on the first portion comprises the steps of: moving a first data word from the first portion in the first dual port memory to a first data register in a first micro-operation; moving a second data word from the first portion in the first dual port memory to a second data register in a second micro-operation; and performing a multiply-accumulate operation on the data words in the first and second data registers during third and fourth micro-operations, wherein the first, second, third, and forth micro-operations, respectively, represent successively adjacent micro-operations.
Claim 16
Dependent Claim 28 words
A method as claimed in claim 13 additionally comprising the step of storing results from said operating on the first portion step in the first dual port memory.
Claim 17
Dependent Claim 318 words
A digital signal processing apparatus comprising: a host processor having a data bus and an address bus; first and second dual port memory elements, wherein each of said memory elements has first and second data and address interfaces, said first data interfaces of said first and second memory elements being coupled to said host processor data bus, and said first address interfaces of said first and second memory elements being coupled to said host processor address bus; first and second coprocessors wherein: each of said coprocessors has a data bus and a data address bus, said first coprocessor data bus being coupled to said first memory element second data interface, said first coprocessor data address bus being coupled to said first memory element second address interface, said second coprocessor data bus being coupled to said second memory element second data interface, and said second coprocessor data address bus being coupled to said second memory element second address interface; and said first coprocessor comprises: a first data register having an input coupled to said first coprocessor data bus and an output; a second data register having an input coupled to said first coprocessor data bus and an output; a multiplier-accumulator having a first input coupled to said first data register output and a second input coupled to said second data register output; a microsequencer having an output coupled to said first and second data registers and having a jump control input ; an address generator having an input coupled to said microsequencer output and an output coupled to said first coprocessor data address bus; a loop counter having an input coupled to said microsequencer output and an output coupled to microsequencer jump control input; and a barrel shifter having a data input coupled to said first coprocessor data bus, a control input coupled to said microsequencer control output, and a shift output coupled to said first coprocessor data bus.
Claim 18
Dependent Claim 318 words
A digital signal processing apparatus comprising: a host processor having a data bus and an address bus; first and second dual port memory elements, wherein each of said memory elements has first and second data and address interfaces, said first data interfaces of said first and second memory elements being coupled to said host processor data bus, and said first address interfaces of said first and second memory elements being coupled to said host processor address bus; first and second coprocessors wherein: each of said coprocessors has a data bus and a data address bus, said first coprocessor data bus being coupled to said first memory element second data interface, said first coprocessor data address bus being coupled to said first memory element second address interface, said second coprocessor data bus being coupled to said second memory element second data interface, and said second coprocessor data address bus being coupled to said second memory element second address interface; and said first coprocessor comprises: a first data register having an input coupled to said first coprocessor data bus and an output; a second data register having an input coupled to said first coprocessor data bus and an output; a multiplier-accumulator having a first input coupled to said first data register output and a second input coupled to said second data register output; a microsequencer having an output coupled to said first and second data registers and having a jump control input ; an address generator having an input coupled to said microsequencer output and an output coupled to said first coprocessor data address bus; a loop counter having an input coupled to said microsequencer output and an output coupled to microsequencer jump control input; and a barrel shifter having a data input coupled to said first coprocessor data bus, a control input coupled to said microsequencer control output, and a shift output coupled to said first coprocessor data bus.

References Cited (Backward Citations)

US4075704A Cited
US4547849A Cited
US4488252A Cited
US4561065A Cited
US4665538A Cited
US4641238A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1992-08-28 1993-02-27 1993-08-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1996-08-28 1997-02-27 1997-08-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2000-08-28 2001-02-27 2001-08-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag