IP Library Granted Patent US 10,452,392
Granted Patent B1
US 10,452,392 · App. 14/600,322 · Granted Oct 22, 2019

Configuring programmable integrated circuit device resources as processors

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,452,392
App. No.
14/600,322
Granted
Oct 22, 2019
Kind
B1
Abstract

A programmable integrated circuit device includes a plurality of clusters of programmable logic resources. Programmable device interconnect resources allow user-defined interconnection between the clusters of programmable logic resources. A plurality of specialized processing blocks have dedicated arithmetic operators and programmable internal interconnect resources, and having inputs and outputs programmably connectable to the programmable device interconnect resources. A plurality of embedded memory modules have inputs and outputs programmably connectable to the programmable device interconnect resources. Instruction sequencing circuitry is provided, and the instruction sequencing circuitry, at least one of the specialized processing blocks and at least one of the embedded memory modules, are programmably connectable to form a processor, where the memory module serves as instruction memory. Optionally, a dedicated instruction bus communicates the instructions from the embedded memory module or modules to the specialized processing block or blocks.

Claims (81)

1. A programmable integrated circuit device comprising:

a plurality of clusters of programmable logic resources;

programmable device interconnect resources enabling interconnection between the plurality of clusters of programmable logic resources;

a plurality of digital signal processing blocks having arithmetic operators and programmable internal interconnect resources, and having inputs and outputs programmably connectable to the programmable device interconnect resources;

a plurality of embedded memory modules having inputs and outputs programmably connectable to the programmable device interconnect resources; and

instruction sequencing circuitry comprising a register configured as a program counter and branch-and-loop logic;

wherein the instruction sequencing circuitry, at least one digital signal processing block of the plurality of digital signal processing blocks and at least one embedded memory module of the plurality of embedded memory modules are programmably connected to form a processor when the instruction sequencing circuitry is turned on, wherein the at least one digital signal processing block is configured as an arithmetic operator independent from the processor and the at least one embedded memory module is configured as a memory independent from the processor when the instruction sequencing circuitry is turned off.

2. The programmable integrated circuit device of claim 1 , wherein the at least one digital signal processing block and the at least one embedded memory module are programmably connectable via the programmable device interconnect resources.

3. The programmable integrated circuit device of claim 2 , wherein:

at least one instance of the instruction sequencing circuitry is located within the at least one digital signal processing block; and

the at least one instance of the instruction sequencing circuitry receives input from at least one arithmetic operator of the arithmetic operators via the programmable internal interconnect resources and provides output to address inputs of the at least one embedded memory module via the programmable device interconnect resources.

4. The programmable integrated circuit device of claim 2 , wherein:

at least one instance of the instruction sequencing circuitry is located within the at least one embedded memory module; and

the at least one instance of the instruction sequencing circuitry receives input from at least one arithmetic operator of the arithmetic operators via the programmable device interconnect resources and provides output to address inputs of the at least one embedded memory module.

5. The programmable integrated circuit device of claim 1 , further comprising:

a dedicated instruction bus; wherein:

outputs of the at least one embedded memory module are programmably connectable to the dedicated instruction bus; and

inputs of the at least one digital signal processing block are programmably connectable to the dedicated instruction bus.

6. The programmable integrated circuit device of claim 5 , wherein:

at least one instance of the instruction sequencing circuitry is located within the at least one digital signal processing block; and

the at least one instance of the instruction sequencing circuitry receives input from at least one arithmetic operator of the arithmetic operators via the programmable internal interconnect resources and provides output to address inputs of the at least one embedded memory module via the dedicated instruction bus.

7. The programmable integrated circuit device of claim 5 , wherein:

at least one instance of the instruction sequencing circuitry is located within the at least one embedded memory module; and

the at least one instance of the instruction sequencing circuitry receives input from at least one arithmetic operator of the arithmetic operators via the dedicated instruction bus and provides output to address inputs of the at least one embedded memory module.

8. The programmable integrated circuit device of claim 5 , wherein:

the dedicated instruction bus extends along the plurality of embedded memory modules and the plurality of digital signal processing blocks;

the dedicated instruction bus is divided into segments that are controllably connected to one another; and

at least one segment of the segments is controllably connected to an output of one embedded memory module of the plurality of embedded memory modules.

9. The programmable integrated circuit device of claim 8 , wherein:

an adjacent pair of the segments of the dedicated instruction bus are connected by a multiplexer that controllably selects, as output to a first segment in the pair, a second segment in the pair or an output of one of the plurality of embedded memory modules; whereby:

the dedicated instruction bus is unidirectional.

10. The programmable integrated device of claim 8 , wherein:

an adjacent pair of the segments of the dedicated instruction bus are connected by a bidirectional repeater; and

the segments are controllably connected to the output of one of the plurality of embedded memory modules by tristatable buffers; whereby:

the dedicated instruction bus is bidirectional.

11. The programmable integrated device of claim 5 , wherein:

the instruction sequencing circuitry is in the at least one digital signal processing block;

inputs of the at least one embedded memory module are programmably connectable to the dedicated instruction bus; and

outputs of the at least one digital signal processing block are programmably connectable to the dedicated instruction bus; whereby:

instruction sequence data passes from the instruction sequencing circuitry to the at least one embedded memory module.

12. The programmable integrated circuit device of claim 1 , wherein the arithmetic operators are dedicated.

13. The programmable integrated circuit device of claim 1 , wherein the arithmetic operators are dynamically configurable.

14. The programmable integrated circuit device of claim 1 , wherein the arithmetic operators receive inputs from directly outside the at least one digital signal processing block.

15. A processor instantiated on a programmable integrated circuit device, the processor comprising:

an embedded memory module of the programmable integrated circuit device configured as instruction memory;

a digital signal processing block of the programmable integrated circuit device, having dedicated arithmetic operators and programmable internal interconnect resources, configured as processor functions; and

instruction sequencing circuitry of the programmable integrated circuit device comprising a register configured as a program counter and branch-and-loop logic, wherein the instruction sequencing circuitry is programmably connected to the embedded memory module and to the digital signal processing block when the instruction sequencing circuitry is turned on, wherein the embedded memory module is configured as a memory independent from the processor and the digital signal processing block is configured as an arithmetic operator independent from the processor when the instruction sequencing circuitry is turned off.

16. The processor instantiated on the programmable integrated circuit device as in claim 15 , wherein the digital signal processing block and the embedded memory module are programmably connectable via the programmable internal interconnect resources.

17. The processor instantiated on the programmable integrated circuit device as in claim 16 , wherein:

the instruction sequencing circuitry is located within the digital signal processing block; and

the instruction sequencing circuitry receives input from the digital signal processing block via the programmable internal interconnect resources and provides output to address inputs of the embedded memory module via the programmable internal interconnect resources.

18. The processor instantiated on the programmable integrated circuit device as in claim 16 , wherein:

the instruction sequencing circuitry is located within the embedded memory module; and

the instruction sequencing circuitry receives input from the digital signal processing block via the programmable internal interconnect resources and provides output to address inputs of the embedded memory module.

19. The processor instantiated on the programmable integrated circuit device as in claim 15 , further comprising:

a dedicated instruction bus of the programmable integrated circuit device; wherein:

outputs of the embedded memory module are programmably connectable to the dedicated instruction bus; and

inputs of the digital signal processing block are programmably connectable to the dedicated instruction bus.

20. The processor instantiated on the programmable integrated circuit device as in claim 19 , wherein:

the instruction sequencing circuitry is located within the digital signal processing block; and

the instruction sequencing circuitry receives input from at least one dedicated arithmetic operator of the dedicated arithmetic operators via the programmable internal interconnect resources and provides output to address inputs the embedded memory module via the dedicated instruction bus.

21. The processor instantiated on the programmable integrated circuit device of claim 19 , wherein:

the instruction sequencing circuitry is located within the embedded memory module; and

the instruction sequencing circuitry receives input from the digital signal processing block via the dedicated instruction bus and provides output to address inputs of the embedded memory module.

22. The processor instantiated on the programmable integrated circuit device as in claim 19 , wherein:

the programmable integrated circuit device comprises a plurality of embedded memory modules including the embedded memory module and a plurality of digital signal processing blocks including the digital signal processing blocks;

the dedicated instruction bus extends along the plurality of embedded memory modules and the plurality of digital signal processing blocks;

the dedicated instruction bus is divided into segments that are controllably connected to one another; and

at least one segment of the segments is controllably connected to an output of one embedded memory module of the plurality of embedded memory modules.

23. The processor instantiated on the programmable integrated device as in claim 22 , wherein:

an adjacent pair of the segments are connected by a multiplexer that controllably selects, as output to a first segment in the adjacent pair, a second segment in the adjacent pair or an output of one of the plurality of embedded memory modules; whereby:

the dedicated instruction bus is unidirectional.

24. The processor instantiated on the programmable integrated device as in claim 22 , wherein:

an adjacent pair of the segments are connected by a bidirectional repeater; and

the segments are controllably connected to outputs of one of the plurality of embedded memory modules by tristatable buffer; whereby:

the dedicated instruction bus is bidirectional.

25. The processor instantiated on the programmable integrated circuit device as in claim 19 , wherein:

the instruction sequencing circuitry is in the digital signal processing block;

inputs of the embedded memory module are programmably connectable to the dedicated instruction bus; and

outputs of the digital signal processing block are programmably connectable to the dedicated instruction bus; whereby:

instruction sequence data passes from the instruction sequencing circuitry to the embedded memory module.

Assignments (2)
SECURITY INTEREST Recorded Sep 12, 2025
From: ALTERA CORPORATION
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 073431/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2015
From: LEWIS, DAVID; MANOHARARAJAH, VALAVAN
To: ALTERA CORPORATION
Reel/Frame 034756/0679 →