MULTI-FUNCTION INPUT/OUTPUT PAD INTERFACES SHARED BETWEEN PROGRAMMABLE AND MICROPROCESSOR CORES, INTEGRATED WITHIN A PROGRAMMABLE SOC SOLUTION
Original Publication Date: 2001-Mar-21
Included in the Prior Art Database: 2001-Mar-21
Publishing Venue
Motorola
Related People
Abstract
The advances in technology that are driving System on Chip (SoC) technologies are also driving advancements in programmable technologies. However a programmable technology, by its nature offers lower silicon efficient but highly flexible solution in comparison to a custom/semi-custom solution. By merging the two technologies it is possible to offer a programmable SoC solution that delivers both a high performance IP block implementation with the added flexibility of a programmable resource that can be used by the customer to rapidly integrate their IP. All of today's system solutions providers, including Motorola offer 'application domain specific' SoC solutions that integrate several IP blocks in the form of embedded cores, memories and peripheral functions. Depending on the customer's application the I/O pad interface requirements to each of the integrated IP blocks may alter. To resolve this I/O pad constrained problem it is common practice to provide multiplexed I/O pads that can be configured by the customer's application. The I/O pad constraint also applies to a programmable SoC solution. However the problem is made more acute due to the high flexibility of the programmable resource. By enhancing the multiplexed I/O pad concept it is possible to provide a solution that is both I/O pad efficient and offers other inter-block connectivity advantages.
MULTI-FUNCTION INPUT/OUTPUT PAD INTERFACES SHARED BETWEEN PROGRAMMABLE AND MICROPROCESSOR CORES, INTEGRATED WITHIN A PROGRAMMABLE SOC SOLUTION
by Alan McKenzie
ABSTRACT
The advances in technology that are driving System on Chip (SoC) technologies are also driving advancements in programmable technologies. However a programmable technology, by its nature offers lower silicon efficient but highly flexible solution in comparison to a custom/semi-custom solution.
By merging the two technologies it is possible to offer a programmable SoC solution that delivers both a high performance IP block implementation with the added flexibility of a programmable resource that can be used by the customer to rapidly integrate their IP.
All of today's system solutions providers, including Motorola offer 'application domain specific' SoC solutions that integrate several IP blocks in the form of embedded cores, memories and peripheral functions. Depending on the customer's application the I/O pad interface requirements to each of the integrated IP blocks may alter. To resolve this I/O pad constrained problem it is common practice to provide multiplexed I/O pads that can be configured by the customer's application.
The I/O pad constraint also applies to a programmable SoC solution. However the problem is made more acute due to the high flexibility of the programmable resource. By enhancing the multiplexed I/O pad concept it is possible to provide a solution that is both I/O pad efficient and offers other inter-block connectivity advantages.
DESCRIPTION
The fundamental purpose of a multiplexed I/O pad is to facilitate the sharing of a scarce I/O pad resource between multiple embedded blocks. This principle is well understood and has been applied extensively in the SoC arena.
The emergence of the relatively new programmable SoC technology has brought with it a different problem space that requires new innovative solutions. By further developing the multiplexed I/O concept it is possible to provide additional programmable inter-block connectivity, interface wrapper and run-time multiplexing capabilities.
INTER-BLOCK CONNECTIVITY CAPABILTY
Within the programmable SoC architecture the programmable resource will require interfaces to the external pad boundary and other inter-block internal interfaces. The external I/O pad and inter-block connectivity requirements of the programmable SoC are impacted by the customer's application. In much the same way that a SoC solution can be considered I/O boundary constrained, a programmable resource embedded within a programmable SoC solution can also be considered to have internal interface boundary constraints.
By slightly increasing the I/O pad multiplexer complexity is possible to support a multiplexed I/O pad with the added capability of providing internal inter-block connectivity between the programmable resource and oth...