Modular, hybrid processor and method for producing a modular, hybrid processor
First Claim
1. A method for integrating a field programmable gate array (FPGA) resource having a first set of defined input/output (I/O) ports with a data processor having a second set of defined I/O ports within a single module, comprising the steps of:
- identifying I/O ports of the FPGA and processor operable in parallel;
identifying control ports of the FPGA and processor;
routing the control ports to a controller;
establishing a controller-to-FPGA (C;
F) interface through the control pins of the FPGA;
establishing a processor-to-controller (P;
C) interface through the control pins of the processor; and
, logically connecting the C;
F and P;
C interfaces;
wherein the step of indentifying I/O ports operable in parallel comprises the steps of;
identifying non-control, non-power, and non-ground ports of the FPGA and processor, determining whether the identified ports are bi-directional, determining whether bi-directional, identified ports are tri-stable, and routing in parallel bi-directional, tri-stable identified ports.
9 Assignments
0 Petitions
Accused Products
Abstract
A method is disclosed for integrating a field programmable gate array (FPGA) with a microprocessor to form a single, multi-chip or stacked, hybrid processor module. The method includes the identification and parallel routing of selected I/O pins of the FPGA and microprocessor. The method further includes the identification and routing of control pins of the FPGA and microprocessor to a controller, and, the establishment of an interface between the controller, the FPGA and the microprocessor in order to develop a processor module for coordinated processing of data utilizing both the FPGA and microprocessor resources.
168 Citations
3 Claims
-
1. A method for integrating a field programmable gate array (FPGA) resource having a first set of defined input/output (I/O) ports with a data processor having a second set of defined I/O ports within a single module, comprising the steps of:
-
identifying I/O ports of the FPGA and processor operable in parallel;
identifying control ports of the FPGA and processor;
routing the control ports to a controller;
establishing a controller-to-FPGA (C;
F) interface through the control pins of the FPGA;
establishing a processor-to-controller (P;
C) interface through the control pins of the processor; and
,logically connecting the C;
F and P;
C interfaces;
wherein the step of indentifying I/O ports operable in parallel comprises the steps of;
identifying non-control, non-power, and non-ground ports of the FPGA and processor, determining whether the identified ports are bi-directional, determining whether bi-directional, identified ports are tri-stable, and routing in parallel bi-directional, tri-stable identified ports. - View Dependent Claims (2, 3)
determining whether non-bi-directional, identified ports are input ports;
determining whether non-bi-directional, identified, input ports receive signals during operation which force a hardwired change of state of the processor; and
,routing in parallel non-bi-directional, identified, input ports which are determined not to force a change of state of the processor.
-
-
3. The method of claim 1, wherein the step of identifying I/O ports operable in parallel includes the steps of:
-
determining whether non-bi-directional, identified ports are output ports;
determining whether non-bi-directional, identified, output ports are tri-statable; and
routing in parallel non-bi-directional, tri-statable, identified, output ports.
-
Specification