Mixed-mode multiplier using hard and soft logic circuitry
First Claim
1. A programmable device comprising:
- an array of user-configurable logic regions arranged in rows and columns, each of said user-configurable logic regions having a first height dimension;
at least one non-configurable logic region located within said array and being preconfigured to perform at least one, and fewer than all, functions needed to perform a multiplication operation, each said at least one non-configurable logic region having a second height dimension equal to an integral number of said first height dimension; and
a network of user-configurable interconnection conductors for conveying signals to, from and among said logic regions;
wherein;
additional functions needed, with said functions performed by said non-configurable logic region, to perform a multiplication operation, are configurable using a particular number of said user-configurable logic regions; and
said second height dimension is designed so that said integral number is equal to said particular number;
whereby;
one of said at least one non-configurable logic region, together with a group of said user-configurable logic regions adjacent to said one of said at least one non-configurable logic region, said group being of said particular number, are configurable, using said network of interconnection conductors, to perform a multiplication operation in a substantially rectangular portion of said programmable device.
0 Assignments
0 Petitions
Accused Products
Abstract
Multiplier circuitry that efficiently utilizes the hard and soft logic regions of a programmable logic device (PLD) is provided. The multiplier circuitry includes a partial product generation block, a compression block (e.g., a carry-save adder), and an carry-propagate adder stage. The partial product generation and compression block are implemented in hard logic while the carry-propagate adder is implemented in soft logic. Local or global routing may be used to connect the hard and soft multiplier components. The multiplier may further include a selectable input register in hard logic and/or a selectable output register in soft logic. This mixed-mode design allows for a substantial savings in the amount of hard logic required to implement the multiplier without a significant decrease in multiplier performance.
19 Citations
16 Claims
-
1. A programmable device comprising:
-
an array of user-configurable logic regions arranged in rows and columns, each of said user-configurable logic regions having a first height dimension; at least one non-configurable logic region located within said array and being preconfigured to perform at least one, and fewer than all, functions needed to perform a multiplication operation, each said at least one non-configurable logic region having a second height dimension equal to an integral number of said first height dimension; and a network of user-configurable interconnection conductors for conveying signals to, from and among said logic regions;
wherein;additional functions needed, with said functions performed by said non-configurable logic region, to perform a multiplication operation, are configurable using a particular number of said user-configurable logic regions; and said second height dimension is designed so that said integral number is equal to said particular number;
whereby;one of said at least one non-configurable logic region, together with a group of said user-configurable logic regions adjacent to said one of said at least one non-configurable logic region, said group being of said particular number, are configurable, using said network of interconnection conductors, to perform a multiplication operation in a substantially rectangular portion of said programmable device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of configuring a multiplication operation in a programmable device, said programmable device having an array of user-configurable logic regions arranged in rows and columns, each of said user-configurable logic regions having a first height dimension;
- at least one non-configurable logic region located within said array and being preconfigured to perform at least one, and fewer than all, functions needed to perform a multiplication operation, each said at least one non-configurable logic region having a second height dimension equal to an integral multiple of said first height dimension; and
a network of user-configurable interconnection conductors for conveying signals to, from and among said logic regions;
said method comprising;selecting a group of said user-configurable logic regions adjacent to one of said at least one non-configurable logic region, said group being of a number corresponding to said integral multiple; configuring said group of user-configurable logic regions to perform additional functions needed, in addition to said functions performed by said non-configurable logic region, to perform a multiplication operation; and configuring said network of interconnection conductors to interconnect said group of user-configurable logic regions and said one of said at least one non-configurable logic region to perform a multiplication operation in a substantially rectangular portion of said programmable device. - View Dependent Claims (12, 13, 14, 15, 16)
- at least one non-configurable logic region located within said array and being preconfigured to perform at least one, and fewer than all, functions needed to perform a multiplication operation, each said at least one non-configurable logic region having a second height dimension equal to an integral multiple of said first height dimension; and
Specification