Connect public, paid and private patent data with Google Patents Public Datasets

Configurable digital wireless and wired communications system architecture for implementing baseband functionality

Download PDF

Info

Publication number
US5790817A
US5790817A US08719799 US71979996A US5790817A US 5790817 A US5790817 A US 5790817A US 08719799 US08719799 US 08719799 US 71979996 A US71979996 A US 71979996A US 5790817 A US5790817 A US 5790817A
Authority
US
Grant status
Grant
Patent type
Prior art keywords
digital
system
cpu
bus
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US08719799
Inventor
Saf M. Asghar
Michael E. Spak
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi Semiconductor (U S) Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Grant date

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATIONS NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/0003Software-defined radio [SDR] systems, i.e. systems wherein components typically implemented in hardware, e.g. filters or modulators/demodulators, are implented using software, e.g. by involving an AD or DA conversion stage such that at least part of the signal processing is performed in the digital domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • H04B1/403Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency
    • H04B1/406Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency with more than one transmission mode, e.g. analog and digital modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/06Receivers
    • H04B1/16Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/06Receivers
    • H04B1/16Circuits
    • H04B1/30Circuits for homodyne or synchrodyne receivers
    • Y02D70/1222
    • Y02D70/142
    • Y02D70/40

Abstract

A configurable multiprocessor communications architecture which performs digital communications functions and which is configurable for different digital communications standards, such as various digital cellular standards. In the preferred embodiment, the multiprocessor architecture includes two or more digital signal processing cores, a microcontroller or micro-scheduler, a voice coder/decoder (codec), and a relatively low performance central processing unit (CPU). Each of the above devices are coupled to a system memory. The general purpose CPU preferably performs user interface functions and overall communications management functions. A CPU local memory and various peripheral devices are coupled through a CPU local bus to the CPU, and these devices are accessible to the CPU without the CPU having to access the main system bus. A dual port bus arbiter is preferably coupled between the CPU and the system bus and controls access to the system bus and the CPU local bus. The micro-scheduler operates to schedule operations and/or functions, as well as dynamically control the clock rates, of each of the DSPs and the hardware acceleration logic to achieve the desired throughput while minimizing power consumption. The present invention thus provides a single architecture which has simplified configurability for different digital standards. The configurable digital communications architecture simplifies design and manufacturing costs and provides improved performance over prior designs.

Description

FIELD OF THE INVENTION

The present invention relates to communications systems for wired and wireless environments, and more particularly to a communications architecture for wired and wireless communication environments which is configurable according to a plurality of possible different digital transmission standards.

DESCRIPTION OF THE RELATED ART

Wireless information networks are currently experiencing enormous growth throughout the world. Examples of wireless information networks include cordless telephones, personal communications services (PCS), cellular telephones, paging systems, mobile data networks, and mobile satellite systems. In conjunction with the growth in wireless information networks, communications networks are currently undergoing a transition from analog-based technology to digital technology. Wireless information networks will benefit greatly from digital implementations, including better performance, increased capacity, and a wider offering of services.

Various types of wireless information networks exist, including networks designed for voice and data. In general, different networks exist for voice and data because of the different and often contradictory requirements of voice service and data service. Thus, although digitized voice, video and data are all "binary digits" (bits), each service has different requirements in a digital network. For example, wireless voice data services are required to be comparable to a user's expectation of telephone voice quality in the public switched telephone network (PSTN). Thus, packetized voice service in a wireless network must minimize time delays in transmission. In general, in a voice transmission, inter-packet delays in excess of 100 msec are noticeable and annoying to the listener. In contrast, in a data services network, time delays are generally irrelevant to the user. Also, packetized voice service can tolerate packet loss rates on the order of 10-2, or bit error rates of the same order, without a noticeable degradation of service quality. In contrast, data services require a much lower error rate, and loss of data packets is generally unacceptable. Voice conversations also typically generate Megabytes of digitized information and last at least several minutes, whereas data transfers typically involve less data and are shorter in length.

Thus, wireless information networks typically involve either voice-driven applications such as digital cellular, PCS, cordless telephones, and wireless PBX, or data-driven networks such as wireless LANs and mobile data networks. For voice applications, digital cellular systems are designed to support mobile users roaming over wide geographic areas, whereas PCS, cordless telephones and wireless PBX systems are designed for relatively smaller geographic areas. For data applications, mobile data networks operate a relatively low data rates over urban radio channels, whereas wireless LANs are typically designed to support a limited number of users in a well-defined local area.

Cellular mobile telephone service is one of the most rapidly growing segments of the wireless communications industry. As mentioned above, digital cellular system is designed to support mobile users roaming over wide geographic areas, and thus coverage is provided by an arrangement of cells with a cell size typically 0.5 to 5 miles in diameter. There are currently several digital cellular standards initiatives in the United States, Europe, and Japan, including GSM (Groupe Special Mobile), IS-54, Japanese Digital Cellular (JDC), and Code Division Multiple Access (CDMA). Thus, current digital cellular telephone architectures are required to accommodate a plurality of different digital communication standards.

Current digital cellular telephone architectures generally include a different integrated circuit chip set, particularly in the baseband section, for accommodating each of these digital standards. Each of these different IC chipsets for performing different digital standards is generally only available from a few select companies, thus limiting the amount of product differentiation between manufacturers.

The use of different integrated circuits for each of the digital standards also adversely effects the telephone manufacturing process. As noted above, different market segments generally utilize different digital standards. For example, Europe is primarily based on the GSM standard, whereas the U.S. is primarily based on the IS54 standard. Therefore, for a company to participate in each of these various market segments for cellular telephones, the company is required to maintain multiple production flows, resources, reliability testing, packaging, port assembly and testing requirements for each of the digital standards that are supported. This necessarily leads to high manufacturing costs, which increases the cost of the overall system.

Therefore, an improved configurable architecture for digital communications applications is desired. More particularly, a new baseband architecture for digital communications is desired which provides reduced power consumption and more efficiency in executing the baseband operations of various digital communication standards. A new baseband architecture for digital communications is further desired which is easily configurable between different digital communications standards, thus simplifying the manufacturing process.

SUMMARY OF THE INVENTION

The present invention comprises a configurable multiprocessor communications architecture which performs various digital communications functions and which is configurable for different digital communications standards, such as various digital cellular standards. In the preferred embodiment, the multiprocessor architecture includes, preferably on a single integrated circuit, two or more digital signal processing cores, a microcontroller, a voice coder/decoder (codec), and a relatively low performance central processing unit. Each of the above devices are coupled to a system memory. The configurable digital communications architecture simplifies design and manufacturing costs and provides improved performance over prior designs.

In the preferred embodiment, the digital communications architecture includes one or more processor cores, preferably digital signal processors (DSPs), coupled through a system bus to a common DSP memory or system memory. The common DSP memory stores code and data used by the one or more DSPs. In one embodiment, two or more DSPs are connected to the system bus, and the two or more DSPs are also coupled through dedicated address and data buses. In this embodiment, the two or more DSPs communicate through the dedicated address and data buses without requiring system bus access. In another embodiment, two or more DSPs are daisy chained to the system bus, and one DSP performs system bus accesses for all of the daisy chained DSPs.

A micro-scheduler is coupled to the system bus and operates to schedule operations and/or functions of the one or more DSPs and the hardware acceleration logic. A general purpose CPU is also coupled to the system bus. The general purpose CPU preferably performs user interface functions and overall communications management functions, among others. A CPU local memory and various peripheral devices are coupled through a CPU local bus to the CPU. Specialized hardware acceleration logic, such as for encryption, may also be coupled to the system bus.

A dual port bus arbiter is preferably coupled between the CPU and the system bus and controls CPU access to the system bus and hence to the DSP memory or system memory. Thus the CPU gains access to the system bus and hence to the DSP memory through the dual port bus arbiter. The CPU local bus is preferably coupled between the CPU and the dual port bus arbiter to allow the CPU to access the CPU local memory and the various peripheral devices without having to access the main system bus. In this embodiment, other devices gain access to the CPU local memory through the dual port bus arbiter.

The CPU accesses the DSP memory to store code and data for use by other devices or to pass messages to the micro-scheduler through a semaphore in the memory. The CPU can also access the DSP memory to store code and data to set up operations which are to be performed by the DSPs under control of the micro-scheduler.

Once the micro-scheduler has received a task from the CPU, the micro-scheduler operates to assign different functions or tasks to the one or more DSPs and the hardware acceleration logic to perform the desired communication operation. During this time, the CPU generally does not have access to the system bus, but rather performs operations using its local CPU memory. The micro-scheduler preferably partitions tasks among each of the DSPs and the hardware acceleration logic to achieve the desired throughput while minimizing power consumption. The micro-scheduler also preferably dynamically controls the clock rates of each of the DSPs to achieve a desired computational throughput while minimizing power consumption.

The digital communications architecture of the present invention is configurable between different communications standards and also different communications applications. Thus, for a manufacturer of digital cellular devices, the digital communications architecture of the present invention can be easily programmed to operate according to the GSM standard, the IS54 standard, a CDMA standard, or a TDMA standard, among others. In addition, the digital communications architecture of the present invention can be easily programmed to operate as a digital cellular device, a cordless phone, or a personal communicator in a PCS system.

The configurable communications architecture of the present invention takes advantage of the synergy or commonality in algorithmic performance in the various digital cellular and digital communications standards. The present invention thus essentially provides a modular building block structure for constructing solutions for various digital cellular standards. According to the present invention, the hardware function units comprised in the architecture utilize a common interconnect, i.e. hardware platform, which remains constant. This hardware architecture is sufficiently flexible to be programmable to perform different functions and/or to operate according to different cellular standards. This removes the problems of the telephone manufacturer having to deal with multiple production and sourcing related issues.

The present invention thus provides a single architecture which has simplified configurability for different digital standards. This enables a reduction in telephone manufacturing costs and processes, in addition to simplified silicon design. In other words, the configurable architecture of the present invention utilizes a single hardware architecture for operating according to multiple different cellular standards, thus easing production and sourcing problems. In the preferred embodiment, the telephone manufacturer simply programs code for the appropriate wireless or wired digital cellular standard prior to shipping the final product.

BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present invention can be obtained when the following detailed description of the preferred embodiment is considered in conjunction with the following drawings, in which:

FIG. 1 illustrates a digital communications device which includes a configurable digital cellular architecture according to the present invention;

FIG. 2 is a block diagram of the configurable digital cellular architecture of the present invention;

FIG. 3 is a more detailed block diagram of the configurable digital cellular architecture of the preferred embodiment;

FIG. 4 is a flowchart diagram illustrating operation of the present invention; and

FIG. 5 illustrates an alternate embodiment where the micro-scheduler is coupled to the CPU local bus;

FIG. 6 illustrates an alternate embodiment where two sets of two DSPs are coupled to the system bus in a daisy chain fashion;

FIG. 7 illustrates an alternate embodiment where two DSPs are coupled to the system bus and are also coupled through dedicated address and data lines; and

FIG. 8 illustrates an alternate embodiment where two DSPs and the CPU are coupled to the system bus and are also coupled through dedicated address and data lines.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Digital Communications Device

Referring now to FIG. 1, a digital communications device 100 which includes the configurable digital architecture of the present invention is shown. In the preferred embodiment, the digital communications device 100 is a digital cellular device for wireless communications. However, the digital communications device may comprise other devices, as desired. As discussed below, the digital cellular device 100 is programmable to operate according to a variety of digital cellular standards, including the GSM standard, the IS54 standard, a CDMA standard, or a TDMA standard, among others. In addition, the digital communications architecture of the present invention can be easily programmed to operate as various digital communications devices, including a digital cellular device, a cordless phone, or a personal communicator in a PCS system, among others.

Configurable Architecture Block Diagram

Referring now to FIG. 2, a block diagram illustrating a configurable multiprocessor architecture for digital communication applications is shown. The configurable multiprocessor architecture of the present invention is preferably configurable to operate according to various different digital standards, such as different digital cellular standards. It is noted that FIG. 2 illustrates a portion of the hardware components comprised in the digital communications device 100, such as a digital cellular telephone. Also, the logic components shown in FIG. 2 are preferably comprised on a single monolithic substrate and/or are preferably comprised as a single integrated circuit.

As shown, the communications device 100 includes a memory 202. The memory 202 stores program code and data which enables the communications device 100 to be configurable according to one or more of a plurality of different communication standards. For example, in the preferred embodiment, the memory 202 stores program code and data which enables the communications device 100 to operate according one or more of various digital cellular standards, such as GSM (group special mobile), IS54, and code division multiple access (CDMA), among others.

In one embodiment, the memory 202 is a multiport memory which includes a plurality of read/write ports. This allows multiple devices to simultaneously access the memory 202. In another embodiment, the memory 202 is a single port memory, and the system includes a dual port bus arbiter (FIG. 3) which controls arbitration for the memory 202, as described further below.

As shown, the digital communications device 100 includes one or more digital signal processors 212 coupled to the memory 202 for performing communications functions. In the preferred embodiment of the invention, the architecture includes one or more first digital signal processors 212a which are configured or designated to perform transmit functions, and one or more digital signal processors 212b which are configured to perform receive functions. The embodiment of FIG. 2 includes two first digital signal processors 212a and two second digital signal processors 212b. In the preferred embodiment, the digital communications device architecture includes only one first digital signal processor 212a which performs transmit functions and only one second digital signal processor 212b which performs receive functions.

Each of the DSPs 212 preferably comprises the ADSP 2171 core available from Analog Devices. In the preferred embodiment, the DSP core is preferably comprised of the ADSP 2171 core and includes certain architecture enhancements which provide improvements in the execution of algorithms or functions required for various digital communication standards. These architectural enhancements are discussed further below.

As shown, the system includes a microcontroller or micro-scheduler 222 which operates to control the operation of each of the transmit DSPs 212a and receive DSPs 212b. The micro-scheduler 222 performs scheduling operations to schedule operation of each of the DSPs 212. Micro-scheduler 222 also places the system in one or more desired modes, such as a parallel processing mode where each of the DSPs 212 are operating in parallel, or a master/slave mode where a first DSP 212 is designated as the master and the remaining DSPs 212 are designated as slave DSPs which receive tasks assigned by the master DSP.

Microcontroller 222 preferably is an efficient low power controller which operates as the central sequence or a task scheduler for the entire digital communications architecture. The sequencer or microcontroller 222 is preferably configured in a manner which allows the addition of computational units or DSPs without requiring a redesign of the sequencer or of memory hardware. According to the present disclosure, the term "computational units" is intended to include elements such as digital signal processing cores, custom logic, serial ports, and hardware acceleration logic, among others.

The microcontroller or sequencer 222 preferably controls each of the DSPs 212 and/or computational units in a manner which balances the computational throughput and power consumption based on the application being performed. Thus the microcontroller 222 preferably balances the tasks or functions assigned to each DSP 212 depending on the amount of computational throughput required. The microcontroller 222 also preferably controls the clock rate of each of the DSPs depending on the computational throughput and power consumption. Thus, for a computational intensive task which requires immediate response, the micro-scheduler 222 partitions the task among two or more DSPs or computational units, and operates the two or more DSPs or computational units at a full clock rate. For tasks which are not computationally intensive, the micro-scheduler 222 partitions the task among one or more of the DSPs or computational units, and operates the one or more DSPs or computational units at a slower clock rate to reduce power consumption.

In one embodiment, the microcontroller or sequencer 222 is an ARM-like processor, which acts as the central sequencer/controller. In this embodiment, software used to program the microcontroller 222 is preferably written in C or in similar higher level language using currently available development tools, i.e. C compilers, simulators, and debuggers. This provides a high level development platform for performing the design of the digital communications device, and also provides flexibility for changes or new features.

The system preferably includes a general purpose CPU 250 which acts as the overall controller of the system. The CPU 250 comprised in the system of the present invention communicates with the micro-scheduler 222 and provides communications tasks to the micro-scheduler 222. The CPU 250 also preferably performs user interface functions, receiving and processing user commands. In one embodiment, the CPU 250 performs an intelligent multimode configurable communicator application. In other words, in one embodiment the CPU 250 executes an application which enables the digital communications device to operate according to different desired modes or digital standards. The CPU 250 also preferably implements various protocol stacks as appropriate due to the variability and the various standard specifications.

As shown, the digital communications system includes analog to digital conversion logic 230 and digital to analog conversion logic 232. The analog to digital (A/D) conversion logic 230 receives analog signals and provides corresponding digital signals to either one or more of the digital signal processors 212, 214, the CPU 250 or to the memory 202. The digital to analog (D/A) conversion logic 232 receives digital signals from the DSPs 212 or 214 or from the memory 202 and provides corresponding analog signals output from the communication device.

The digital communications device also preferably includes hardware acceleration logic for performing certain tasks and hardware. The hardware accelerator logic 240 preferably performs functions such as data coding or encryption, or other functions which require specialized or dedicated hardware.

Common Hardware for Different Digital Cellular Standards

As mentioned above, the configurable digital communications architecture shown in FIG. 2 is configurable according to various communications standards. The present invention takes advantage of the commonality of functional requirements between each of the digital cellular standards.

In general, each digital cellular standard includes a baseband section comprising baseband logic for performing operations on the voice or data signals at the baseband frequency level. A typical baseband transmission block includes voice coding, channel coding, protocol handling, and modulation functions. Voice coding algorithms are generally based on code excited linear prediction methods. The voice coding algorithms used for each of the different cellular standards typically differ in bit rates, code books and error control used in the linear prediction voice coding algorithm. However, each of these voice coding algorithms are similar in execution and complexity from a computational standpoint. Channel coding and protocol stack functions are also similar in concept for each of the different digital cellular standards. However, differences exist in the length of the convolutional coding elements, trellis coding and viterbi decoding. The modulation used by the baseband sections of each of the digital cellular standards typically use well-known quaternary phase shift keying (QPSK) or GMSK modulation schemes.

Once voice signals have been digitized in a digital cellular voice call, the transmission flow resembles operation of a high speed modem. In a wired medium, the propagation channel is generally time invariant, whereas in the wired medium the propagation channel is time varying.

The design of the receiver station of both wired and wireless media generally has similar architecture features. However, the wireless receiver is generally far more complex in order to handle multipath fading characteristics of the channel. In analyzing the transmit and receive sections of a digital cellular architecture, it is apparent that the speech encoding algorithm in the transmit section requires the most computations and complexity. The receive section is dominated by channel equalization and viterbi estimation.

According to the configurable digital communication architecture of the present invention, the wireless and wired modem architectures are treated in a similar manner, thus producing a number of significant advantages. One advantage is that the transmission path can now be broken into two distinct sections, i.e., the transmit block can be treated as an independent block from the receive section.

As discussed above, prior art systems employ a single digital signal processor to execute the complete baseband functionality of a digital communications device. This inherently leads to high power consumption, high clock rates and excessive overhead in maintaining program flow and interrupts. Memory design also becomes an issue at higher clock rates.

The present invention provides a new communication architecture for digital communications which provides reduced power consumption and more efficiency in executing the baseband operations of various digital communication standards. As mentioned above, the system of the present invention includes two or more DSPs or computational units 212 and also includes a micro-scheduler 222 which dynamically assigns tasks and clock rates to achieve a desired computational throughput with reduced power consumption. This enables the use of lower clock rates in the system, thus reducing power requirements.

Also, by partitioning the communication functions, such as transmit and receive functions, between multiple processors, under the command of a controller, functional units in the digital communication system can operate in various modes, such as in a parallel processor mode or in a master/slave mode. Further, due to the use of multiple processors performing separate functions, the system can operate at lower clock rates which are sufficient to implement the required functionality. This enables power consumption to be controlled more easily. The present invention further includes circuit design techniques which further reduce power dissipation.

The multiprocessor architecture of the present invention also preferably utilizes one or more transmit digital signal processors 212a and one or more receive digital signal processors 212b. The transmit DSPs 212a perform the transmit function, whereas the receive DSPs 212b perform the receive function. Implementation of the transmit and the receive functions in different digital signal processors provides flexibility and scalability,

The overall architecture is also programmable or configurable according to various different digital communication standards and voice coding algorithms. This configurability allows the manufacturer to produce one hardware architecture which can then be configured according to various desired standards. This obviates the necessity of the telephone manufacturer having to deal with multiple production and sourcing related issues.

FIG. 3--Block Diagram

Referring now to FIG. 3, a more detailed block diagram illustrating the preferred embodiment of the invention is shown. Elements in FIG. 3 which are similar or identical to elements in FIG. 2 have the same reference numerals for convenience. The elements or components shown in FIG. 3 are preferably all comprised on a single monolithic silicon substrate and/or are preferably comprised as a single integrated circuit.

As shown, the digital communications system includes one or more processor cores 212 coupled through a bus 214 to a common DSP memory or system memory 202. The processor cores 212 are preferably digital signal processors, although other types of processor units may be used. In the preferred embodiment, the system includes two DSPs 212, although a greater or lesser number of DSPs may be used.

Specialized hardware acceleration logic 240 may also be coupled to the bus 214. The hardware acceleration logic 240 is included to perform certain functions in dedicated hardware due to computational requirements. In the preferred embodiment, the hardware acceleration logic 240 performs data encryption operations.

Microcontroller or micro-scheduler 222 is coupled to the bus 214 and operates to schedule operations and/or functions of the one or more DSPs 212 and the hardware acceleration logic 240. A general purpose CPU 250 is also coupled to the bus 214. The general purpose CPU 250 preferably performs user interface functions and overall communications management functions, among others.

The digital communications system includes analog to digital conversion logic 230 and digital to analog conversion logic 232. The analog to digital (A/D) conversion logic 230 receives analog signals and provides corresponding digital signals to either one or more of the digital signal processors 212, 214, the CPU 250 or to the memory 202. The digital to analog (D/A) conversion logic 232 receives digital signals from the DSPs 212 or 214 or from the memory 202 and provides corresponding analog signals output from the communication device. The A/D logic 230 and the D/A logic 232 are primarily used for converting analog speech signals to digital signals, and for converting digital speech signals to analog speech signals. In one embodiment, the A/D logic 230 and the D/A logic 232 are comprised in a voice coder / decoder (codec).

The common DSP memory or system memory 202 stores code and data used by the one or more DSPs 212, as well as for the hardware acceleration logic 240, the micro-scheduler 222, and the CPU 250.

A non-volatile memory 203 is coupled to the system memory 202 and stores code and data necessary to implement one or more digital cellular standards. Code and data is programmed into the non-volatile memory 203 by the manufacturer to program or configure the system according to a desired digital standard, such as a digital cellular standard. At power-up, the code and data from the non-volatile memory 203 is preferably transferred to the system memory 202 for use within the system. In one embodiment, code and data for two or more digital cellular standards are programmed into the non-volatile memory 203, and the user can selectively configure the digital communications device according to one of these desired digital cellular standards, depending on the location where the device is used.

A bus arbiter 252, referred to as a dual port bus arbiter 252, is preferably coupled between the CPU 250 and the bus 214 and controls access to the bus 214 and hence to the system memory 202. A CPU local memory 262 and various peripheral devices 264 are coupled through a CPU local bus 260 to the CPU 250. The CPU local bus 260 is coupled between the CPU 250 and the dual port bus arbiter 252 to allow the CPU 250 to access the CPU local memory 262 and the various peripheral devices 264 without having to access the main system bus 214. The non-volatile memory 203 may be coupled to the CPU local memory 262 for providing code and data to the CPU local memory 262 during power-on. As mentioned above, the non-volatile memory 203 stores code and data which allows the digital communications device to operate according to a desired digital cellular standard.

As mentioned above, the dual port bus arbiter 252 controls access to the system bus 214 and hence to the system memory or DSP memory 202. The CPU 250 accesses the system memory 202 to store code and data for use by other devices or to pass messages to the micro-scheduler 222 through a semaphore in the system memory 202. The CPU 250 also accesses the DSP memory 202 to store code and data to set up operations which are to be performed by the DSPs 212 under control of the micro-scheduler 222.

Once the micro-scheduler 222 has received a task from the CPU 250, the micro-scheduler operates to assign different functions or tasks to the one or more DSPs 212 and the hardware acceleration logic 240 to perform the desired communication operation. During this time, the CPU 250 generally does not have access to the system bus 214, but rather performs operations using its local CPU memory 262. Thus, after the CPU 250 accesses the memory 202 to set up a transmit or receive operation, the micro-scheduler 222 gains access to the bus 214 to access the memory 202 and assign tasks to different DSPs 212. The CPU 250 operates out of its CPU local memory 262 during this time that it is "locked out" of the memory 202.

Thus the dual port bus arbiter 252 controls access to the system bus 214 and hence to the DSP memory 202. Once the CPU 250 has set up an operation and relinquished control to the micro-scheduler 222, the dual port bus arbiter 252 controls access to the system bus 214 between the micro-scheduler 222, the DSPs 212, and the hardware acceleration logic 240.

In one embodiment, the dual port bus arbiter 252 also controls access to the CPU local memory 262 from other devices, such as the micro-scheduler 222. Thus when the micro-scheduler 222 desires to read or write a location in the CPU local memory 262, the micro-scheduler 222 requests access to the CPU local bus 260 through the dual port bus arbiter 252. The CPU 250 has priority access to the CPU local bus 260.

The digital communications architecture of the present invention is configurable between different communications standards and also different communications applications. Thus, for a manufacturer of digital cellular devices, the digital communications architecture of the present invention can be easily programmed to operate according to the GSM standard, the IS54 standard, a CDMA standard, or a TDMA standard, among others. In addition, the digital communications architecture of the present invention can be easily programmed to operate as a digital cellular device, a cordless phone, or a personal communicator in a PCS system.

The configurable multiprocesser architecture of the present invention takes advantage of the synergy or commonality in algorithmic performance in the various digital cellular and digital communications standards. The present invention thus essentially provides a modular building block structure for constructing solutions for various digital cellular standards. According to the present invention, the hardware function units comprised in the architecture utilize a common interconnect, i.e. hardware platform, which remains constant. This hardware architecture is sufficiently flexible to be programmable to perform different functions and/or to operate according to different cellular standards. This removes the problems of the telephone manufacturer having to deal with multiple production and sourcing related issues.

Flowchart Diagram

Referring now to FIG. 4, a flowchart diagram illustrating operation of the preferred embodiment of the present invention is shown.

As shown, in step 402 the CPU writes code and data to the system memory 202 to configure the microcontroller 222 to perform desired functions. Thus in step 402 the CPU 250 sets up a communications function, such as a transmit or receive function, by writing the appropriate code and data to the system memory 202. This code and data provides the necessary information which enables the microcontroller 222 to begin a communications function.

In step 404 the microcontroller 222 accesses the code and data written by the CPU 250 from the system memory 202. In step 406 the microcontroller selectively assigns functions to the one or more digital signal processors 212 based on the code and data written by the CPU 250. Thus the microcontroller or micro-scheduler 222 acts to assign functions or tasks to one or more of the DSPs based on the function being performed. In step 408 the one or more digital signal processors 212 perform digital communications functions in response to the microcontroller 222 selectively assigning functions to the one or more digital signal processors 212. It is noted that, during this time, the CPU 250 accesses code and data from the CPU local memory 262 in step 410. Thus the micro-scheduler 222 acts to assign functions or tasks to the one or more of the DSPs in step 408 substantially contemporaneously with the CPU 250 accessing code and data from the CPU local memory 262 in step 410.

The microcontroller 222 preferably selectively assigns tasks to each of the one or more digital signal processors 212 to attain a desired computational throughput while also minimizing power consumption. Each of the one or more digital signal processors is configurable to operate at one of a plurality of different clock rates. In the preferred embodiment, the microcontroller 222 selectively controls the clock rates of each of the one or more digital signal processors 212 to reduce or minimize power consumption. Thus, the microcontroller 222 may assign a task to only one DSP 212 and operate the DSP 212 at its full clock rate to perform the task. The microcontroller 222 may also partition the task between two or more of the DSPs 212 and operate each of the DSPs 212 at half their full clock rate to perform the task in order to reduce power consumption.

Programming the System according to a Desired Digital Standard

In order to program the hardware system of FIG. 3 according to a desired digital communications standard, such as a digital cellular standard, code and data is stored or written into non-volatile memory 203 which is coupled to the system memory 202. The code and data stored in the non-volatile memory 203 is in accordance with the digital standard. Thus, if it is desired to program the system for the GSM digital cellular standard, code and data is programmed into the non-volatile memory 203 which performs operations according to this digital standard. Upon power-up, the code and data stored in the non-volatile memory 203 is transferred to the system memory 202 for use in the system. Code and data stored in the non-volatile memory 203 may also be transferred to the CPU local memory 262 for execution by the CPU. Alternatively, a separate non-volatile storage memory (not shown) is coupled to the CPU local memory 262 for providing code and data to the CPU local memory 262 during power-up.

FIG. 5--Micro-scheduler coupled to CPU Local Bus (Alternate Embodiment)

Referring now to FIG. 5, an alternate embodiment of the invention is shown. In the embodiment of FIG. 5, the micro-scheduler or microcontroller 222 is coupled to the CPU local bus 260. This enables the CPU 250 and the microcontroller 222 to communicate on the CPU local bus 260, thus freeing up the system bus 214 for use by the DSPs 212. The microcontroller 222 accesses the system bus 214 and hence the system memory 202 through the dual port bus arbiter 252. The microcontroller 222 preferably uses the CPU local memory 262 for operations and writes code and data to the system memory 202 to assign functions or tasks to the DSPs 212.

FIG. 6--DSP Daisy Chain Embodiment

Referring now to FIG. 6, an alternate embodiment of the invention is shown. In the embodiment of FIG. 6, two or more DSPs 212 are coupled to the system bus 214 in a daisy chain format. In other words, a first DSP 212 is coupled to the system bus 214, and a second DSP 212 is coupled to the first DSP 212. In the embodiment of FIG. 6, two sets or groups of first and second DSPs are shown coupled to the system bus 214. For each group of first and second DSPs, the first DSP 212 accesses code and data from the system memory 202 that is required for both of the first and second DSPs 212. This limits the required accesses to the system bus 214 and hence to the system memory 202.

Thus, in this embodiment, only the first DSP 212 in a group of two or more DSPs is assigned a task by the microcontroller 222. In response, the first DSP 212 reads code and data from the system memory 202 that is required for both of the first and second DSPs 212 in the group. The first DSP 212 then partitions tasks between the first and second DSPs 212. The first and second DSPs 212 operate in either a parallel processing mode or a master/slave mode to accomplish the assigned task, using the code and data retrieved by the first DSP 212.

FIG. 7--Dedicated DSP Buses (Alternate Embodiment)

Referring now to FIG. 7, an alternate embodiment of the invention is shown. In the embodiment of FIG. 7, two or more DSPs 212 are coupled to the system bus 214, and the system includes dedicated address and data buses coupled between the two or more DSPs 212. This enables the two or more DSPs 212 to communicate via the dedicated address and data buses without having to access the system bus. For example, this facilitates the operation of the two or more DSPs 212 in a master/slave mode or a parallel processing mode. For more information on this embodiment, please see EPO patent number 0465054, and U.S. patent application Ser. No. 07/548,709, which are both hereby incorporated by reference as though fully set forth herein.

In one embodiment of the invention, each of the DSPs 212 include a separate local memory (not shown), and each of the DSPs 212 execute code and data out of their respective local memories. This reduces the arbitration and contention for the system memory 202. The DSP local memories in this embodiment are also used for communication between each of the DSPs, using the dedicated address and data buses.

FIG. 8--Dedicated Buses Between DSPs and CPUs (Alternate Embodiment)

Referring now to FIG. 8, an alternate embodiment of the invention is shown. In the embodiment of FIG. 7, two or more DSPs 212 are coupled to the system bus 214, and the system includes dedicated address and data buses coupled between the two or more DSPs 212 and the CPU 250. This enables the two or more DSPs 212 and the CPU 250 to communicate via the dedicated address and data buses without having to access the system bus.

In another embodiment (not shown), the system includes dedicated address and data buses coupled between the two or more DSPs 212 and the micro-scheduler 222. This enables the micro-scheduler 222 to more easily assign tasks, such as passing commands and data, to the two or more DSPs 212.

DSP Functional Enhancements to the ADSP Architecture

In the preferred embodiment, each of the DSPs 212 comprises the ADSP 2171 core available from Analog Devices. As noted above, in the preferred embodiment the DSP core is preferably comprised of the ADSP 2171 core and includes certain architecture enhancements which provide improvements in the execution of algorithms or functions required for various digital communication standards. These architectural enhancements are listed below.

1. Shadowing of Address Generation Registers.

2. Shadowing of all Registers to 2 levels.

3. Register File to separate Dual Memories from Functional Units.

4. Using a register file to separate dual memories from functional units allows Parallel Operation of Functional Units, including pipelining the ALU with the MAC and pipelining the ALU with the Shifter. This also supports Table Search Algorithms.

5. Exploit Internal DRAM spare cycles for Data I/O.

6. Enhanced Instructions to Support Channel Coding/Decoding: Data Compare and Pointer Save.

7. Post and Pre scaling for MAC operations to allow easier Data Normalisation.

These features are added to the ADI Architecture at a cost of increasing Instruction word length and memory architecture. Also, the ability to add/subtract functional units tailored to particular applications and modifying the instruction set accordingly provides a more modular approach to the DSP Architecture and allows cost-effective solutions in price-sensitive markets. Support tools may also be provided to cover these enhancements to allow ease of programmability for embedded applications.

Conclusion

The present invention thus provides a single architecture which has simplified configurability for different digital standards. This enables a reduction in telephone manufacturing costs and processes, in addition to simplified silicon design. In other words, the configurable architecture of the present invention utilizes a single hardware architecture for operating according to multiple different cellular standards, thus easing production and sourcing problems. In the preferred embodiment, the telephone manufacturer simply programs code for the appropriate wireless or wired digital cellular standard prior to shipping the final product.

Although the system and method of the present invention has been described in connection with the preferred embodiment, it is not intended to be limited to the specific form set forth herein, but on the contrary, it is intended to cover such alternatives, modifications, and equivalents, as can be reasonably included within the spirit and scope of the invention as defined by the appended claims.

Claims (26)

We claim:
1. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
one or more digital signal processors (DSPs) coupled to the system bus for performing communication functions;
a microcontroller coupled to said system bus which controls operations of said one or more digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the one or more digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a bus arbiter coupled to the system bus which controls arbitration and access to the system bus, wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU;
a CPU local memory coupled to the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations;
wherein the CPU is operable to write code and data to the system memory to configure the microcontroller to perform desired functions; and
wherein the microcontroller is configured to read said code and data written by the CPU and selectively assign functions to the one or more digital signal processors based on said code and data written by the CPU.
2. The digital wireless communication system of claim 1, wherein the bus arbiter is a dual port bus arbiter, wherein the dual port bus arbiter is coupled between the system bus and the CPU, wherein the CPU local memory is coupled between the dual port bus arbiter and the CPU, wherein the dual port bus arbiter is also configured to receive requests from each of the microcontroller and the CPU for access to the CPU local memory, wherein the dual port bus arbiter selectively grants access to the CPU local memory to one of either the microcontroller or the CPU.
3. The digital wireless communication system of claim 1, wherein the microcontroller is configured to selectively assign tasks to each of said one or more digital signal processors to attain a desired computational throughput.
4. The digital wireless communication system of claim 1, wherein each of said one or more digital signal processors is configurable to operate at a clock rate, wherein the microcontroller is configured to selectively control the clock rates of each of said one or more digital signal processors to reduce power consumption.
5. The digital wireless communication system of claim 1, wherein the CPU is operable to access code and data from the CPU local memory while the microcontroller accesses code and data from the system memory.
6. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, comprising, on a single integrated circuit:
a system bus for transmitting code and data;
system memory coupled to the system bus for storing code and data;
one or more digital signal processors (DSPs) coupled to the system bus for performing communication functions;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a bus arbiter coupled between the system bus and the CPU which controls arbitration and access to the system bus;
a CPU local bus coupled between the CPU and the bus arbiter;
a CPU local memory coupled to the CPU local bus, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations; and
a microcontroller coupled to the CPU local bus which controls operations of said one or more digital signal processors, wherein the microcontroller is configured to access code and data from the CPU local memory, wherein the microcontroller is configured to control operations of the one or more digital signal processors;
wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU;
wherein the CPU is operable to write code and data to the system memory to configure the microcontroller to perform desired functions; and
wherein the microcontroller is configured to read said code and data written by the CPU and selectively assign functions to the one or more digital signal processors based on said code and data written by the CPU.
7. The digital wireless communication system of claim 6, wherein the microcontroller is configured to selectively assign tasks to each of said one or more digital signal processors to attain a desired computational throughput.
8. The digital wireless communication system of claim 6, wherein each of said one or more digital signal processors is configurable to operate at a clock rate, wherein the microcontroller is configured to selectively control the clock rates of each of said one or more digital signal processors to reduce power consumption.
9. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
at least two digital signal processors (DSPs) coupled to the system bus for performing communication functions;
one or more address/data buses coupled between the at least two DSPs for communicating data between the at least two DSPs;
a microcontroller coupled to said system bus which controls operations of said at least two digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the at least two digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a bus arbiter coupled to the system bus which controls arbitration and access to the system bus, wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU;
a CPU local memory coupled to the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations;
wherein the CPU is operable to write code and data to the system memory to configure the microcontroller to perform desired functions;
wherein the microcontroller is configured to read said code and data written by the CPU and selectively assign functions to the one or more digital signal processors based on said code and data written by the CPU.
10. The digital wireless communication system of claim 9, wherein the bus arbiter is a dual port bus arbiter, wherein the dual port bus arbiter is coupled between the system bus and the CPU, wherein the CPU local memory is coupled between the dual port bus arbiter and the CPU, wherein the dual port bus arbiter is also configured to receive requests from each of the microcontroller and the CPU for access to the CPU local memory, wherein the dual port bus arbiter selectively grants access to the CPU local memory to one of either the microcontroller or the CPU.
11. The digital wireless communication system of claim 9, wherein the microcontroller is configured to selectively assign tasks to each of said one or more digital signal processors to attain a desired computational throughput.
12. The digit wireless communication system of claim 9, wherein each of said one or more digital signal processors is configurable to operate at a clock rate, wherein the microcontroller is configured to selectively control the clock rates of each of said one or more digital signal processors to reduce power consumption.
13. The digital wireless communication system of claim 9, further comprising:
one or more address/data buses coupled between one or more of the DSPs and the CPU for communicating data between one or more of the DSPs and the CPU.
14. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
a first digital signal processor (DSP) coupled to the system bus for performing communication functions;
a second DSP coupled to the first DSP, wherein the second DSP is not directly connected to the system bus, wherein the first DSP performs system memory accesses to retrieve code and data used by both of the first and second DSPs;
a microcontroller coupled to said system bus which controls operations of said at least two digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the at least two digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a bus arbiter coupled to the system bus which controls arbitration and access to the system bus, wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU;
a CPU local memory coupled to the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations;
wherein the CPU is operable to write code and data to the system memory to configure the microcontroller to perform desired functions; and
wherein the microcontroller is configured to read said code and data written by the CPU and selectively assign functions to the one or more digital signal processors based on said code and data written by the CPU.
15. The digital wireless communication system of claim 14, wherein the microcontroller is configured to selectively assign tasks to each of said one or more digital signal processors to attain a desired computational throughput.
16. The digital wireless communication system of claim 14, wherein each of said one or more digital signal processors is configurable to operate at a clock rate, wherein the microcontroller is configured to selectively control the clock rates of each of said one or more digital signal processors to reduce power consumption.
17. A method for performing digital communications functions in a digital communications device comprising a system memory, a dual port bus arbiter coupled to the system memory which controls arbitration and access to the system memory, one or more digital signal processors (DSPs) coupled to the system memory, a microcontroller coupled to the system memory, and a CPU coupled to the system memory, the method comprising:
the dual port bus arbiter receiving requests from each of the microcontroller and the CPU for access to the system bus;
the dual port bus arbiter selectively granting control of the system bus to one of either the microcontroller or the CPU;
the CPU writing code and data to the system memory to configure the microcontroller to perform desired functions;
the microcontroller accessing the code and data written by the CPU;
the microcontroller selectively assigning functions to the one or more digital signal processors based on said code and data written by the CPU; and
the one or more digital signal processors performing digital communications functions in response to the microcontroller selectively assigning functions to the one or more digital signal processors.
18. The method of claim 17, wherein the digital communications device further includes a CPU local memory coupled between the dual port bus arbiter and the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations, the method further comprising:
the dual port bus arbiter receiving requests from each of the microcontroller and the CPU for access to the CPU local memory; and
the dual port bus arbiter selectively granting access to the CPU local memory to one of either the microcontroller or the CPU based on said received requests.
19. The method of claim 17, further comprising:
the microcontroller selectively assigning tasks to each of said one or more digital signal processors to attain a desired computational throughput.
20. The method of claim 17, wherein each of said one or more digital signal processors is configurable to operate at a clock rate, the method further comprising:
the microcontroller selectively controlling the clock rates of each of said one or more digital signal processors to reduce power consumption.
21. The method of claim 17, further comprising:
the CPU accessing code and data from the CPU local memory during said microcontroller accessing the code and data written by the CPU.
22. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
one or more digital signal processors (DSPs) coupled to the system bus for performing communication functions;
a microcontroller coupled to said system bus which controls operations of said one or more digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the one or more digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a dual port bus arbiter coupled between the system bus and the CPU, wherein the dual port bus arbiter controls arbitration and access to the system bus, wherein the dual port bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU; and
a CPU local memory coupled between the dual port bus arbiter and the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations; and
wherein the dual port bus arbiter is also configured to receive requests from each of the microcontroller and the CPU for access to the CPU local memory, wherein the dual port bus arbiter selectively grants access to the CPU local memory to one of either the microcontroller or the CPU.
23. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
one or more digital signal processors (DSPs) coupled to the system bus for performing communication functions;
a microcontroller coupled to said system bus which controls operations of said one or more digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the one or more digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a bus arbiter coupled to the system bus which controls arbitration and access to the system bus, wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU; and
a CPU local memory coupled to the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations;
wherein the CPU is operable to access code and data from the CPU local memory while the microcontroller accesses code and data from the system memory.
24. A digital wireless communication system for performing communications according to one of a plurality of different digital standards, wherein the system is configurable to operate according to different ones of said plurality of digital standards, the digital wireless communication system comprising, on a single integrated circuit:
a system bus for transmitting data;
system memory coupled to the system bus for storing code and data;
at least two digital signal processors (DSPs) coupled to the system bus for performing communication functions;
one or more address/data buses coupled between the at least two DSPs for communicating data between the at least two DSPs;
a microcontroller coupled to said system bus which controls operations of said at least two digital signal processors, wherein the microcontroller is configured to access code and data from the system memory, wherein the microcontroller is configured to control operations of the at least two digital signal processors;
a voice coder/decoder (codec) coupled to the system bus, wherein the voice codec includes analog to digital conversion logic and digital to analog conversion logic;
a central processing unit (CPU) coupled to the system bus, wherein the CPU implements one of a plurality of possible protocol stacks for digital communication;
a dual port bus arbiter coupled between the system bus and the CPU, wherein the dual port bus arbiter controls arbitration and access to the system bus, wherein the bus arbiter is configured to receive requests from each of the microcontroller and the CPU for access to the system bus and selectively grant control of the system bus to one of either the microcontroller or the CPU; and
a CPU local memory coupled between the dual port bus arbiter and the CPU, wherein the CPU local memory stores code and data used by the CPU for performing communication control operations;
wherein the dual port bus arbiter is also configured to receive requests from each of the microcontroller and the CPU for access to the CPU local memory, wherein the dual port bus arbiter selectively grants access to the CPU local memory to one of either the microcontroller or the CPU.
25. A method for performing digital communications functions in a digital communications device comprising a system memory, a dual port bus arbiter coupled to the system memory which controls arbitration and access to the system memory, one or more digital signal processors (DSPs) coupled to the system memory, a microcontroller coupled to the system memory, a CPU coupled to the system memory, and a CPU local memory coupled between the dual port bus arbiter and the CPU, the method comprising:
the dual port bus arbiter receiving requests from each of the microcontroller and the CPU for access to the CPU local memory;
the dual port bus arbiter selectively granting control of the CPU local memory to one of either the microcontroller or the CPU based on said received requests;
the CPU writing code and data to the system memory to configure the microcontroller to perform desired functions;
the microcontroller accessing the code and data written by the CPU;
the microcontroller selectively assigning functions to the one or more digital signal processors based on said code and data written by the CPU; and
the one or more digital signal processors performing digital communications functions in response to the microcontroller selectively assigning functions to the one or more digital signal processors.
26. A method for performing digital communications functions in a digital communications device comprising a system memory, one or more digital signal processors (DSPs) coupled to the system memory, a microcontroller coupled to the system memory, and a CPU coupled to the system memory, and a CPU local memory coupled between the microcontroller and the CPU, the method comprising:
the CPU writing code and data to the system memory to configure the microcontroller to perform desired functions;
the microcontroller accessing the code and data written by the CPU;
the CPU accessing code and data from the CPU local memory during said microcontroller accessing the code and data written by the CPU;
the microcontroller selectively assigning functions to the one or more digital signal processors based on said code and data written by the CPU; and
the one or more digital signal processors performing digital communications functions in response to the microcontroller selectively assigning functions to the one or more digital signal processors.
US08719799 1996-09-25 1996-09-25 Configurable digital wireless and wired communications system architecture for implementing baseband functionality Expired - Lifetime US5790817A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08719799 US5790817A (en) 1996-09-25 1996-09-25 Configurable digital wireless and wired communications system architecture for implementing baseband functionality

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US08719799 US5790817A (en) 1996-09-25 1996-09-25 Configurable digital wireless and wired communications system architecture for implementing baseband functionality
DE1997633314 DE69733314D1 (en) 1996-09-25 1997-09-24 Configurable architecture for digital wireless and wireline communication systems
PCT/US1997/017150 WO1998014023A1 (en) 1996-09-25 1997-09-24 Configurable digital wireless and wired communications system architecture
DE1997633314 DE69733314T2 (en) 1996-09-25 1997-09-24 Configurable architecture for digital wireless and wireline communication systems
JP51587698A JP2001501791A (en) 1996-09-25 1997-09-24 Configurable wireless and wired digital communication system architecture
EP19970945275 EP0928550B1 (en) 1996-09-25 1997-09-24 Configurable digital wireless and wired communications system architecture

Publications (1)

Publication Number Publication Date
US5790817A true US5790817A (en) 1998-08-04

Family

ID=24891412

Family Applications (1)

Application Number Title Priority Date Filing Date
US08719799 Expired - Lifetime US5790817A (en) 1996-09-25 1996-09-25 Configurable digital wireless and wired communications system architecture for implementing baseband functionality

Country Status (5)

Country Link
US (1) US5790817A (en)
JP (1) JP2001501791A (en)
DE (2) DE69733314D1 (en)
EP (1) EP0928550B1 (en)
WO (1) WO1998014023A1 (en)

Cited By (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872993A (en) * 1997-12-01 1999-02-16 Advanced Micro Devices, Inc. Communications system with multiple, simultaneous accesses to a memory
US6012136A (en) * 1997-12-01 2000-01-04 Advanced Micro Devices, Inc. Communications system with a configurable data transfer architecture
US6029239A (en) * 1997-12-01 2000-02-22 Advanced Micro Devices, Inc. Configuring a communications system with a configurable data transfer architecture
WO2000022857A1 (en) * 1998-10-09 2000-04-20 Telefonaktiebolaget Lm Ericsson Telecommunications terminals
US6128307A (en) * 1997-12-01 2000-10-03 Advanced Micro Devices, Inc. Programmable data flow processor for performing data transfers
US20020038409A1 (en) * 2000-09-26 2002-03-28 Ricoh Company, Ltd. Digital signal processor and modem using the same
US20020037079A1 (en) * 2000-09-25 2002-03-28 Broadcom Corporation Stream cipher encryption application accelerator and methods thereof
WO2002039242A1 (en) 2000-10-31 2002-05-16 Millennial Net, Inc. Networked processing system with optimized power efficiency
WO2002054198A2 (en) * 2001-01-05 2002-07-11 International Business Machines Corporation Computer system having low energy consumption
EP1226509A1 (en) * 1999-08-27 2002-07-31 International Business Machines Corporation Network processor processing complex and methods
US20020169990A1 (en) * 2001-03-21 2002-11-14 Sherburne Robert Warren Low power clocking systems and methods
WO2002091605A2 (en) * 2001-05-08 2002-11-14 Quicksilver Technology, Inc. Method and system for reconfigurable channel coding
US20020184546A1 (en) * 2001-04-18 2002-12-05 Sherburne, Jr Robert Warren Method and device for modifying the memory contents of and reprogramming a memory
US20030008684A1 (en) * 2000-01-24 2003-01-09 Ferris Gavin Robert Digital wireless basestation
US20030046531A1 (en) * 2001-08-30 2003-03-06 Nec Corporation Partition reconfiguration system, partition reconfiguration method, and partition reconfiguration program
US20030099221A1 (en) * 2001-11-28 2003-05-29 Sokwoo Rhee Network protocol
US6609188B1 (en) * 2000-03-31 2003-08-19 Intel Corporation Data flow processor
US20030163742A1 (en) * 2002-02-25 2003-08-28 James Lam Power conservation techniques for a digital computer
US20030199288A1 (en) * 1998-05-01 2003-10-23 Starfish Software, Inc. Enhanced companion digital organizer for a cellular phone device
US20030217090A1 (en) * 2002-05-20 2003-11-20 Gerard Chauvel Energy-aware scheduling of application execution
US20030214978A1 (en) * 2002-05-20 2003-11-20 Bois Karl Joseph Encoded multi-access bus system and method
US6658268B1 (en) 1998-05-01 2003-12-02 Motorola, Inc. Enhanced companion digital organizer for a cellular phone device
US20040114676A1 (en) * 2002-12-13 2004-06-17 Texas Instruments Incorporated Upstream signal optimizer with a transmitter employing the same and a method of optimizing an upstream signal
US20040268171A1 (en) * 2003-05-27 2004-12-30 Nec Corporation Power supply management system in parallel processing system by OS for single processors and power supply management program therefor
US20050037789A1 (en) * 2003-06-05 2005-02-17 Sokwoo Rhee Protocol for configuring a wireless network
US20050125578A1 (en) * 2003-12-03 2005-06-09 I-Tao Liao Architecture of reconfigurable radio processor
WO2005096513A3 (en) * 2004-03-03 2005-12-15 Ericsson Telefon Ab L M Method and system for dual-core processing
US20060149975A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Operating point management in multi-core architectures
US20060285579A1 (en) * 2005-06-01 2006-12-21 Sokwoo Rhee Communicating over a wireless network
WO2007052962A1 (en) * 2005-11-02 2007-05-10 Mtekvision Co., Ltd. Camera control apparatus, image data displaying apparatus and method thereof
US20070156709A1 (en) * 2003-12-24 2007-07-05 Halbe Hageman Manifold in a radio base station and method of using such a radio base station
US20070190994A1 (en) * 2006-02-16 2007-08-16 Fujitsu Limited Software defined radio
US20070242651A1 (en) * 2006-02-14 2007-10-18 Frederic Hayem Method and system for a RFIC master
US7315556B1 (en) * 2000-07-31 2008-01-01 Agere Systems Inc. Shared CODEC in multiprocessor systems
US20080177914A1 (en) * 2003-06-26 2008-07-24 Nvidia Corporation Hardware support system for accelerated disk I/O
US20080177925A1 (en) * 2003-12-01 2008-07-24 Radoslav Danilak Hardware support system for accelerated disk I/O
WO2009120479A2 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Off-line task list architecture
WO2009120480A1 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Reconfigurable wireless modem sub-circuits to implement multiple air interface standards
US20090245334A1 (en) * 2008-03-28 2009-10-01 Qualcomm Incorporated Wall clock timer and system for generic modem
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7668229B2 (en) 2001-12-12 2010-02-23 Qst Holdings, Llc Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US20100070667A1 (en) * 2008-09-16 2010-03-18 Nvidia Corporation Arbitration Based Allocation of a Shared Resource with Reduced Latencies
US20100095036A1 (en) * 2008-10-14 2010-04-15 Nvidia Corporation Priority Based Bus Arbiters Avoiding Deadlock And Starvation On Buses That Support Retrying Of Transactions
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US20100259536A1 (en) * 2009-04-08 2010-10-14 Nvidia Corporation System and method for deadlock-free pipelining
US7865847B2 (en) 2002-05-13 2011-01-04 Qst Holdings, Inc. Method and system for creating and programming an adaptive computing engine
US7904603B2 (en) 2002-10-28 2011-03-08 Qst Holdings, Llc Adaptable datapath for a digital processing system
US7937538B2 (en) 2002-11-22 2011-05-03 Qst Holdings, Llc External memory controller node
US7937591B1 (en) 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
USRE42743E1 (en) 2001-11-28 2011-09-27 Qst Holdings, Llc System for authorizing functionality in adaptable hardware devices
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US8225073B2 (en) 2001-11-30 2012-07-17 Qst Holdings Llc Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
EP2230603A3 (en) * 2001-08-29 2012-08-01 Mediatek Inc. Method and apparatus for timing and event processing in wireless systems
US8250339B2 (en) 2001-11-30 2012-08-21 Qst Holdings Llc Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US20120226847A1 (en) * 2007-01-22 2012-09-06 Renesas Electronics Corporation Multi-processor device
US8276135B2 (en) 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US8356143B1 (en) 2004-10-22 2013-01-15 NVIDIA Corporatin Prefetch mechanism for bus master memory access
US8356142B1 (en) 2003-11-12 2013-01-15 Nvidia Corporation Memory controller for non-sequentially prefetching data for a processor of a computer system
US8356161B2 (en) 2001-03-22 2013-01-15 Qst Holdings Llc Adaptive processor for performing an operation with simple and complex units each comprising configurably interconnected heterogeneous elements
US8533431B2 (en) 2001-03-22 2013-09-10 Altera Corporation Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US8610970B1 (en) * 2011-08-20 2013-12-17 Darwin Hu Liquid crystal display (LCD) scanners
US8683132B1 (en) 2003-09-29 2014-03-25 Nvidia Corporation Memory controller for sequentially prefetching data for a processor of a computer system
US9002998B2 (en) 2002-01-04 2015-04-07 Altera Corporation Apparatus and method for adaptive multimedia reception and transmission in communication environments
US9569385B2 (en) 2013-09-09 2017-02-14 Nvidia Corporation Memory transaction ordering

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998002441A3 (en) * 1996-07-12 1998-03-05 Ariad Pharma Inc Non immunosuppressive antifungal rapalogs
US5999990A (en) * 1998-05-18 1999-12-07 Motorola, Inc. Communicator having reconfigurable resources
US6181734B1 (en) 1998-05-29 2001-01-30 Motorola, Inc. Multiple waveform software radio
EP1082657A1 (en) * 1998-06-01 2001-03-14 Motorola, Inc. Communications system having a distributed object architecture
US20010033561A1 (en) * 2000-01-25 2001-10-25 Telefonaktiebolaget L M Ericsson ( Publ). Combination switch and routing-switching radio base station
DE10340424B4 (en) 2003-09-02 2006-07-27 Infineon Technologies Ag Operating condition-dependent distribution of tasks in a mobile communication terminal having a plurality of micro-processors
KR100548414B1 (en) 2003-10-09 2006-02-02 엘지전자 주식회사 Mobile communication terminal equipped with triple mode function
JP4773693B2 (en) * 2004-06-07 2011-09-14 キヤノン株式会社 Memory control system
JP4150711B2 (en) 2004-11-10 2008-09-17 オリンパス株式会社 Imaging device
US8095173B2 (en) * 2005-08-22 2012-01-10 Intel Corporation Wireless communication device with physical-layer reconfigurable processing engines
DE102006015789B4 (en) * 2006-04-04 2011-06-01 Infineon Technologies Ag Processor arrangement, method for exchanging configuration data and / or communication data between a first processor and a second plurality of processors and computer program element
US7778822B2 (en) * 2006-05-19 2010-08-17 Sony Ericsson Mobile Communications Ab Allocating audio processing among a plurality of processing units with a global synchronization pulse
EP2187697B1 (en) * 2008-11-14 2012-01-04 Telefonaktiebolaget L M Ericsson (publ) Modular radio network access device
EP2256937B1 (en) * 2009-05-28 2011-12-28 Universität Duisburg-Essen Digital receiver, digital transmitter, method for operating a digital receiver or a digital transmitter and computer program
US8141784B2 (en) 2009-09-25 2012-03-27 Hand Held Products, Inc. Encoded information reading terminal with user-configurable multi-protocol wireless communication interface

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418967A (en) * 1990-06-22 1995-05-23 Digital Equipment Corporation Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines
US5428730A (en) * 1992-12-15 1995-06-27 International Business Machines Corporation Multimedia system having software mechanism providing standardized interfaces and controls for the operation of multimedia devices
US5475818A (en) * 1992-03-18 1995-12-12 Aeg Transportation Systems, Inc. Communications controller central processing unit board
US5621800A (en) * 1994-11-01 1997-04-15 Motorola, Inc. Integrated circuit that performs multiple communication tasks
US5657375A (en) * 1993-01-04 1997-08-12 Ameritech Corporation Wireless digital personal communications system having voice/data/image two-way calling and intercell hand off provided through distributed logic
US5675751A (en) * 1993-11-19 1997-10-07 International Business Machines Corporation Computer system having a DSP local bus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4718057A (en) * 1985-08-30 1988-01-05 Advanced Micro Devices, Inc. Streamlined digital signal processor
US5555287A (en) * 1992-07-21 1996-09-10 Advanced Micro Devices, Inc. Integrated circuit and cordless telephone using the integrated circuit
US5483577A (en) * 1994-01-24 1996-01-09 Advanced Micro Devices, Inc. Single chip telephone answering machine, telephone, speakerphone, and ADSI controller
US5465409A (en) * 1994-03-07 1995-11-07 Motorola, Inc. Radio architecture with dual frequency source selection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418967A (en) * 1990-06-22 1995-05-23 Digital Equipment Corporation Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines
US5475818A (en) * 1992-03-18 1995-12-12 Aeg Transportation Systems, Inc. Communications controller central processing unit board
US5428730A (en) * 1992-12-15 1995-06-27 International Business Machines Corporation Multimedia system having software mechanism providing standardized interfaces and controls for the operation of multimedia devices
US5657375A (en) * 1993-01-04 1997-08-12 Ameritech Corporation Wireless digital personal communications system having voice/data/image two-way calling and intercell hand off provided through distributed logic
US5675751A (en) * 1993-11-19 1997-10-07 International Business Machines Corporation Computer system having a DSP local bus
US5621800A (en) * 1994-11-01 1997-04-15 Motorola, Inc. Integrated circuit that performs multiple communication tasks

Cited By (164)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6012136A (en) * 1997-12-01 2000-01-04 Advanced Micro Devices, Inc. Communications system with a configurable data transfer architecture
US6029239A (en) * 1997-12-01 2000-02-22 Advanced Micro Devices, Inc. Configuring a communications system with a configurable data transfer architecture
US6128307A (en) * 1997-12-01 2000-10-03 Advanced Micro Devices, Inc. Programmable data flow processor for performing data transfers
US5872993A (en) * 1997-12-01 1999-02-16 Advanced Micro Devices, Inc. Communications system with multiple, simultaneous accesses to a memory
US7072688B2 (en) 1998-05-01 2006-07-04 Motorola, Inc. Enhanced companion digital organizer for a cellular phone device
US6658268B1 (en) 1998-05-01 2003-12-02 Motorola, Inc. Enhanced companion digital organizer for a cellular phone device
US20030199288A1 (en) * 1998-05-01 2003-10-23 Starfish Software, Inc. Enhanced companion digital organizer for a cellular phone device
WO2000022857A1 (en) * 1998-10-09 2000-04-20 Telefonaktiebolaget Lm Ericsson Telecommunications terminals
EP1226509A4 (en) * 1999-08-27 2007-09-26 Ibm Network processor processing complex and methods
EP1226509A1 (en) * 1999-08-27 2002-07-31 International Business Machines Corporation Network processor processing complex and methods
US20030008684A1 (en) * 2000-01-24 2003-01-09 Ferris Gavin Robert Digital wireless basestation
US20030208671A1 (en) * 2000-03-31 2003-11-06 Dunton Randy R. Data flow processor
US6609188B1 (en) * 2000-03-31 2003-08-19 Intel Corporation Data flow processor
US6904512B2 (en) * 2000-03-31 2005-06-07 Intel Corporation Data flow processor
US7315556B1 (en) * 2000-07-31 2008-01-01 Agere Systems Inc. Shared CODEC in multiprocessor systems
US20020037079A1 (en) * 2000-09-25 2002-03-28 Broadcom Corporation Stream cipher encryption application accelerator and methods thereof
US7277542B2 (en) * 2000-09-25 2007-10-02 Broadcom Corporation Stream cipher encryption application accelerator and methods thereof
US20080107260A1 (en) * 2000-09-25 2008-05-08 Broadcom Corporation Stream cipher encryption application accelerator and methods thereof
US7903813B2 (en) * 2000-09-25 2011-03-08 Broadcom Corporation Stream cipher encryption application accelerator and methods thereof
US6970984B2 (en) * 2000-09-26 2005-11-29 Ricoh Company, Ltd. Digital signal processor and modem using the same
US20020038409A1 (en) * 2000-09-26 2002-03-28 Ricoh Company, Ltd. Digital signal processor and modem using the same
US6804790B2 (en) 2000-10-31 2004-10-12 Millennial Net Coordinating protocol for a multi-processor system
WO2002039242A1 (en) 2000-10-31 2002-05-16 Millennial Net, Inc. Networked processing system with optimized power efficiency
US20050132080A1 (en) * 2000-10-31 2005-06-16 Millennial Net, A Massachusetts Corporation Coordinating protocol for a multi-processor system
EP1330699A1 (en) * 2000-10-31 2003-07-30 Millennial Net, Inc. Networked processing system with optimized power efficiency
EP1330699A4 (en) * 2000-10-31 2008-12-17 Millennial Net Inc Networked processing system with optimized power efficiency
WO2002054198A3 (en) * 2001-01-05 2003-11-13 Ibm Computer system having low energy consumption
US6986066B2 (en) 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
WO2002054198A2 (en) * 2001-01-05 2002-07-11 International Business Machines Corporation Computer system having low energy consumption
US20060080566A1 (en) * 2001-03-21 2006-04-13 Sherburne Robert W Jr Low power clocking systems and methods
US7398414B2 (en) 2001-03-21 2008-07-08 Gallitzin Allegheny Llc Clocking system including a clock controller that uses buffer feedback to vary a clock frequency
US6990598B2 (en) 2001-03-21 2006-01-24 Gallitzin Allegheny Llc Low power reconfigurable systems and methods
US7139921B2 (en) 2001-03-21 2006-11-21 Sherburne Jr Robert Warren Low power clocking systems and methods
US20020169990A1 (en) * 2001-03-21 2002-11-14 Sherburne Robert Warren Low power clocking systems and methods
US9396161B2 (en) 2001-03-22 2016-07-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US9665397B2 (en) 2001-03-22 2017-05-30 Cornami, Inc. Hardware task manager
US9015352B2 (en) 2001-03-22 2015-04-21 Altera Corporation Adaptable datapath for a digital processing system
US8589660B2 (en) 2001-03-22 2013-11-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US9164952B2 (en) 2001-03-22 2015-10-20 Altera Corporation Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US8543795B2 (en) 2001-03-22 2013-09-24 Altera Corporation Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US8533431B2 (en) 2001-03-22 2013-09-10 Altera Corporation Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US9037834B2 (en) 2001-03-22 2015-05-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US8356161B2 (en) 2001-03-22 2013-01-15 Qst Holdings Llc Adaptive processor for performing an operation with simple and complex units each comprising configurably interconnected heterogeneous elements
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US8543794B2 (en) 2001-03-22 2013-09-24 Altera Corporation Adaptive integrated circuitry with heterogenous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US20060059377A1 (en) * 2001-04-18 2006-03-16 Sherburne Robert W Jr Low power clocking systems and methods
US6993669B2 (en) * 2001-04-18 2006-01-31 Gallitzin Allegheny Llc Low power clocking systems and methods
US20020184546A1 (en) * 2001-04-18 2002-12-05 Sherburne, Jr Robert Warren Method and device for modifying the memory contents of and reprogramming a memory
US8249135B2 (en) 2001-05-08 2012-08-21 Qst Holdings Llc Method and system for reconfigurable channel coding
US7822109B2 (en) 2001-05-08 2010-10-26 Qst Holdings, Llc. Method and system for reconfigurable channel coding
WO2002091605A3 (en) * 2001-05-08 2007-11-22 Quicksilver Tech Inc Method and system for reconfigurable channel coding
US7809050B2 (en) 2001-05-08 2010-10-05 Qst Holdings, Llc Method and system for reconfigurable channel coding
US8767804B2 (en) 2001-05-08 2014-07-01 Qst Holdings Llc Method and system for reconfigurable channel coding
WO2002091605A2 (en) * 2001-05-08 2002-11-14 Quicksilver Technology, Inc. Method and system for reconfigurable channel coding
US6577678B2 (en) * 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
US20030190910A1 (en) * 2001-05-08 2003-10-09 Scheuermann W. James Method and system for reconfigurable channel coding
EP2230603A3 (en) * 2001-08-29 2012-08-01 Mediatek Inc. Method and apparatus for timing and event processing in wireless systems
US7036009B2 (en) * 2001-08-30 2006-04-25 Nec Corporation Partition reconfiguration system, partition reconfiguration method, and partition reconfiguration program
US20030046531A1 (en) * 2001-08-30 2003-03-06 Nec Corporation Partition reconfiguration system, partition reconfiguration method, and partition reconfiguration program
US20090092069A1 (en) * 2001-11-28 2009-04-09 Millennial Net, Inc. Network protocol
US7948930B2 (en) 2001-11-28 2011-05-24 Millennial Net, Inc. Network protocol
USRE42743E1 (en) 2001-11-28 2011-09-27 Qst Holdings, Llc System for authorizing functionality in adaptable hardware devices
US20030099221A1 (en) * 2001-11-28 2003-05-29 Sokwoo Rhee Network protocol
US8098615B2 (en) * 2001-11-28 2012-01-17 Millennial Net, Inc. Network protocol
US7522563B2 (en) 2001-11-28 2009-04-21 Millennial Net, Inc. Network protocol
US8250339B2 (en) 2001-11-30 2012-08-21 Qst Holdings Llc Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8225073B2 (en) 2001-11-30 2012-07-17 Qst Holdings Llc Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
US9594723B2 (en) 2001-11-30 2017-03-14 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having fixed, application specific computational elements
US9330058B2 (en) 2001-11-30 2016-05-03 Altera Corporation Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8880849B2 (en) 2001-11-30 2014-11-04 Altera Corporation Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8442096B2 (en) 2001-12-12 2013-05-14 Qst Holdings Llc Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US7668229B2 (en) 2001-12-12 2010-02-23 Qst Holdings, Llc Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US9002998B2 (en) 2002-01-04 2015-04-07 Altera Corporation Apparatus and method for adaptive multimedia reception and transmission in communication environments
US6968468B2 (en) 2002-02-25 2005-11-22 O2 Micro, Inc. Digital computer utilizing buffer to store and output data to play real time applications enabling processor to enter deep sleep state while buffer outputs data
WO2003073249A1 (en) * 2002-02-25 2003-09-04 O2Micro, Inc. Power conservation techniques for a digital computer
US20030163742A1 (en) * 2002-02-25 2003-08-28 James Lam Power conservation techniques for a digital computer
US7865847B2 (en) 2002-05-13 2011-01-04 Qst Holdings, Inc. Method and system for creating and programming an adaptive computing engine
EP1365312A1 (en) * 2002-05-20 2003-11-26 Texas Instruments Incorporated Energy-aware scheduling of application execution
US20030217090A1 (en) * 2002-05-20 2003-11-20 Gerard Chauvel Energy-aware scheduling of application execution
US8032891B2 (en) 2002-05-20 2011-10-04 Texas Instruments Incorporated Energy-aware scheduling of application execution
US20030214978A1 (en) * 2002-05-20 2003-11-20 Bois Karl Joseph Encoded multi-access bus system and method
US7302020B2 (en) * 2002-05-20 2007-11-27 Hewlett-Packard Development Company, L.P. Encoded multi-access bus system and method
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US8200799B2 (en) 2002-06-25 2012-06-12 Qst Holdings Llc Hardware task manager
US8782196B2 (en) 2002-06-25 2014-07-15 Sviral, Inc. Hardware task manager
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US7937591B1 (en) 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US7904603B2 (en) 2002-10-28 2011-03-08 Qst Holdings, Llc Adaptable datapath for a digital processing system
US8380884B2 (en) 2002-10-28 2013-02-19 Altera Corporation Adaptable datapath for a digital processing system
US8706916B2 (en) 2002-10-28 2014-04-22 Altera Corporation Adaptable datapath for a digital processing system
US8276135B2 (en) 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US7979646B2 (en) 2002-11-22 2011-07-12 Qst Holdings, Inc. External memory controller node
US7984247B2 (en) 2002-11-22 2011-07-19 Qst Holdings Llc External memory controller node
US7941614B2 (en) 2002-11-22 2011-05-10 QST, Holdings, Inc External memory controller node
US7937538B2 (en) 2002-11-22 2011-05-03 Qst Holdings, Llc External memory controller node
US8266388B2 (en) 2002-11-22 2012-09-11 Qst Holdings Llc External memory controller
US8769214B2 (en) 2002-11-22 2014-07-01 Qst Holdings Llc External memory controller node
US7937539B2 (en) 2002-11-22 2011-05-03 Qst Holdings, Llc External memory controller node
US20040114676A1 (en) * 2002-12-13 2004-06-17 Texas Instruments Incorporated Upstream signal optimizer with a transmitter employing the same and a method of optimizing an upstream signal
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7325148B2 (en) * 2003-05-27 2008-01-29 Nec Corporation Power supply management system in parallel processing system by OS for single processors and power supply management program therefor
US20040268171A1 (en) * 2003-05-27 2004-12-30 Nec Corporation Power supply management system in parallel processing system by OS for single processors and power supply management program therefor
US20100128634A1 (en) * 2003-06-05 2010-05-27 Millennial Net, Inc. Protocol for configuring a wireless network
US20080062941A1 (en) * 2003-06-05 2008-03-13 Millennial Net, Inc. A Delaware Corporation Protocol for configuring a wireless network
US20050037789A1 (en) * 2003-06-05 2005-02-17 Sokwoo Rhee Protocol for configuring a wireless network
US7313399B2 (en) 2003-06-05 2007-12-25 Millennial Net, Inc. Protocol for configuring a wireless network
US7606572B2 (en) 2003-06-05 2009-10-20 Millennial Net, Inc. Protocol for configuring a wireless network
US8386648B1 (en) 2003-06-26 2013-02-26 Nvidia Corporation Hardware support system for accelerated disk I/O
US8595394B1 (en) 2003-06-26 2013-11-26 Nvidia Corporation Method and system for dynamic buffering of disk I/O command chains
US20080177914A1 (en) * 2003-06-26 2008-07-24 Nvidia Corporation Hardware support system for accelerated disk I/O
US8694688B2 (en) 2003-06-26 2014-04-08 Nvidia Corporation Disk controller for implementing efficient disk I/O for a computer system
US8683132B1 (en) 2003-09-29 2014-03-25 Nvidia Corporation Memory controller for sequentially prefetching data for a processor of a computer system
US8356142B1 (en) 2003-11-12 2013-01-15 Nvidia Corporation Memory controller for non-sequentially prefetching data for a processor of a computer system
US8700808B2 (en) 2003-12-01 2014-04-15 Nvidia Corporation Hardware support system for accelerated disk I/O
US20080177925A1 (en) * 2003-12-01 2008-07-24 Radoslav Danilak Hardware support system for accelerated disk I/O
US7096288B2 (en) 2003-12-03 2006-08-22 Industrial Technology Research Institute Architecture of reconfigurable radio processor
US20050125578A1 (en) * 2003-12-03 2005-06-09 I-Tao Liao Architecture of reconfigurable radio processor
US20070156709A1 (en) * 2003-12-24 2007-07-05 Halbe Hageman Manifold in a radio base station and method of using such a radio base station
US7706840B2 (en) * 2003-12-24 2010-04-27 Telefonaktiebolaget L M Ericsson (Publ) Manifold in a radio base station and method of using such a radio base station
US7805591B2 (en) 2004-03-03 2010-09-28 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for dual-core processing
WO2005096513A3 (en) * 2004-03-03 2005-12-15 Ericsson Telefon Ab L M Method and system for dual-core processing
CN103312352B (en) * 2004-03-03 2015-09-16 艾利森电话股份有限公司 A method for a dual-core processing system, and
US8356143B1 (en) 2004-10-22 2013-01-15 NVIDIA Corporatin Prefetch mechanism for bus master memory access
US9785226B2 (en) 2004-12-30 2017-10-10 Intel Corporation Operating point management in multi-core architectures
US20090172375A1 (en) * 2004-12-30 2009-07-02 Intel Corporation Operating Point Management in Multi-Core Architectures
WO2006073899A3 (en) * 2004-12-30 2007-01-04 Intel Corp Operating point management in multi-core architectures
WO2006073899A2 (en) * 2004-12-30 2006-07-13 Intel Corporation Operating point management in multi-core architectures
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US20060149975A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Operating point management in multi-core architectures
US9619009B2 (en) 2004-12-30 2017-04-11 Intel Corporation Operating point management in multi-core architectures
US20110099397A1 (en) * 2004-12-30 2011-04-28 Efraim Rotem Operating point management in multi-core architectures
DE112005003136B4 (en) * 2004-12-30 2009-10-01 Intel Corporation, Santa Clara Process, apparatus and system for dynamically adjusting operating parameters of a plurality of Porzessorkernen
US8650424B2 (en) 2004-12-30 2014-02-11 Intel Corporation Method and apparatus to control power consumption of a plurality of processor cores
US7844308B2 (en) 2005-06-01 2010-11-30 Millennial Net, Inc. Communicating over a wireless network
US8271058B2 (en) 2005-06-01 2012-09-18 Millennial Net, Inc. Communicating over a wireless network
US20110045875A1 (en) * 2005-06-01 2011-02-24 Sokwoo Rhee Communicating over a Wireless Network
US20060285579A1 (en) * 2005-06-01 2006-12-21 Sokwoo Rhee Communicating over a wireless network
WO2007052962A1 (en) * 2005-11-02 2007-05-10 Mtekvision Co., Ltd. Camera control apparatus, image data displaying apparatus and method thereof
US7984216B2 (en) 2006-02-14 2011-07-19 Broadcom Corporation Method and system for a RFIC master
US8161217B2 (en) 2006-02-14 2012-04-17 Broadcom Corporation Method and system for a RFIC master
US7577779B2 (en) * 2006-02-14 2009-08-18 Broadcom Corporation Method and system for a RFIC master
US20070242651A1 (en) * 2006-02-14 2007-10-18 Frederic Hayem Method and system for a RFIC master
US20090307402A1 (en) * 2006-02-14 2009-12-10 Broadcom Corporation Method and system for a rfic master
US20070190994A1 (en) * 2006-02-16 2007-08-16 Fujitsu Limited Software defined radio
US8621127B2 (en) * 2007-01-22 2013-12-31 Renesas Electronics Corporation Multi-processor device with groups of processors and respective separate external bus interfaces
US20120226847A1 (en) * 2007-01-22 2012-09-06 Renesas Electronics Corporation Multi-processor device
US8520571B2 (en) 2008-03-26 2013-08-27 Qualcomm Incorporated Reconfigurable wireless modem sub-circuits to implement multiple air interface standards
US20090248920A1 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Off-Line Task List Architecture
US8458380B2 (en) 2008-03-26 2013-06-04 Qualcomm Incorporated Off-line task list architecture utilizing tightly coupled memory system
WO2009120479A3 (en) * 2008-03-26 2010-01-14 Qualcomm Incorporated Off-line task list architecture
CN102099801B (en) * 2008-03-26 2015-01-14 高通股份有限公司 Reconfigurable wireless modem sub-circuits to implement multiple air interface standards
CN102099800B (en) * 2008-03-26 2015-04-01 高通股份有限公司 Off-line task list architecture
WO2009120480A1 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Reconfigurable wireless modem sub-circuits to implement multiple air interface standards
WO2009120479A2 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Off-line task list architecture
US8787433B2 (en) 2008-03-28 2014-07-22 Qualcomm Incorporated Wall clock timer and system for generic modem
US20090245334A1 (en) * 2008-03-28 2009-10-01 Qualcomm Incorporated Wall clock timer and system for generic modem
US8356128B2 (en) 2008-09-16 2013-01-15 Nvidia Corporation Method and system of reducing latencies associated with resource allocation by using multiple arbiters
US20100070667A1 (en) * 2008-09-16 2010-03-18 Nvidia Corporation Arbitration Based Allocation of a Shared Resource with Reduced Latencies
US20100095036A1 (en) * 2008-10-14 2010-04-15 Nvidia Corporation Priority Based Bus Arbiters Avoiding Deadlock And Starvation On Buses That Support Retrying Of Transactions
US8370552B2 (en) 2008-10-14 2013-02-05 Nvidia Corporation Priority based bus arbiters avoiding deadlock and starvation on buses that support retrying of transactions
US20100259536A1 (en) * 2009-04-08 2010-10-14 Nvidia Corporation System and method for deadlock-free pipelining
US8698823B2 (en) 2009-04-08 2014-04-15 Nvidia Corporation System and method for deadlock-free pipelining
US8610970B1 (en) * 2011-08-20 2013-12-17 Darwin Hu Liquid crystal display (LCD) scanners
US9569385B2 (en) 2013-09-09 2017-02-14 Nvidia Corporation Memory transaction ordering

Also Published As

Publication number Publication date Type
JP2001501791A (en) 2001-02-06 application
DE69733314D1 (en) 2005-06-23 grant
WO1998014023A1 (en) 1998-04-02 application
EP0928550B1 (en) 2005-05-18 grant
DE69733314T2 (en) 2006-03-16 grant
EP0928550A1 (en) 1999-07-14 application

Similar Documents

Publication Publication Date Title
US5915123A (en) Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements
US5889816A (en) Wireless adapter architecture for mobile computing
US6986021B2 (en) Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US6574688B1 (en) Port manager controller for connecting various function modules
US6738881B1 (en) Multi-channel DMA with scheduled ports
US20050081203A1 (en) System and method for asymmetric heterogeneous multi-threaded operating system
US6128307A (en) Programmable data flow processor for performing data transfers
US4862452A (en) Digital signal processing system
US4408323A (en) Processor facilities for integrated packet and voice switching
US4626985A (en) Single-chip microcomputer with internal time-multiplexed address/data/interrupt bus
US7251737B2 (en) Convergence device with dynamic program throttling that replaces noncritical programs with alternate capacity programs based on power indicator
US6807595B2 (en) Mobile communication device having a prioritized interrupt controller
US20060209846A1 (en) Globally asynchronous communication architecture for system on chip
US7254649B2 (en) Wireless spread spectrum communication platform using dynamically reconfigurable logic
US20020019926A1 (en) Switch/network adapter port for clustered computers employing a chain of multi-adaptive processors in a dual in-line memory module format
US6029239A (en) Configuring a communications system with a configurable data transfer architecture
US7283838B2 (en) Open baseband processing architecture for next generation wireless and mobile communication terminal design
US6339788B1 (en) Method for encapsulating hardware to allow multi-tasking of microcode
US5911082A (en) Parallel processing building block chip
US20060039317A1 (en) Method and apparatus to support multi standard, multi service base-stations for wireless voice and data netwoks
US20020174244A1 (en) System and method for coordinating, distributing and processing of data
US6745317B1 (en) Three level direct communication connections between neighboring multiple context processing elements
Srikanteswara et al. An overview of configurable computing machines for software radio handsets
US5872993A (en) Communications system with multiple, simultaneous accesses to a memory
US6954821B2 (en) Crossbar switch that supports a multi-port slave device and method of operation

Legal Events

Date Code Title Description
AS Assignment

Owner name: ADVANCED MICRO DEVICES, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ASGHAR, SAF M.;SPAK, MICHAEL E.;REEL/FRAME:008242/0269

Effective date: 19960919

AS Assignment

Owner name: MORGAN STANLEY & CO. INCORPORATED, NEW YORK

Free format text: SECURITY INTEREST;ASSIGNOR:LEGERITY, INC.;REEL/FRAME:011601/0539

Effective date: 20000804

AS Assignment

Owner name: LEGERITY, INC., TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ADVANCED MICRO DEVICES, INC.;REEL/FRAME:011700/0686

Effective date: 20000731

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: MORGAN STANLEY & CO. INCORPORATED, AS FACILITY COL

Free format text: SECURITY AGREEMENT;ASSIGNORS:LEGERITY, INC.;LEGERITY HOLDINGS, INC.;LEGERITY INTERNATIONAL, INC.;REEL/FRAME:013372/0063

Effective date: 20020930

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: LEGERITY, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING INC;REEL/FRAME:019640/0676

Effective date: 20070803

Owner name: LEGERITY, INC.,TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING INC;REEL/FRAME:019640/0676

Effective date: 20070803

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: MICROSEMI SEMICONDUCTOR (U.S.) INC., TEXAS

Free format text: CHANGE OF NAME;ASSIGNOR:ZARLINK SEMICONDUCTOR (U.S.) INC.;REEL/FRAME:031746/0214

Effective date: 20111121

Owner name: ZARLINK SEMICONDUCTOR (U.S.) INC., TEXAS

Free format text: MERGER;ASSIGNOR:LEGERITY, INC.;REEL/FRAME:031746/0171

Effective date: 20071130

AS Assignment

Owner name: MORGAN STANLEY & CO. LLC, NEW YORK

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:MICROSEMI SEMICONDUCTOR (U.S.) INC.;REEL/FRAME:031729/0667

Effective date: 20131125

AS Assignment

Owner name: BANK OF AMERICA, N.A., AS SUCCESSOR AGENT, NORTH C

Free format text: NOTICE OF SUCCESSION OF AGENCY;ASSIGNOR:ROYAL BANK OF CANADA (AS SUCCESSOR TO MORGAN STANLEY & CO. LLC);REEL/FRAME:035657/0223

Effective date: 20150402

AS Assignment

Owner name: MICROSEMI SEMICONDUCTOR (U.S.) INC., A DELAWARE CO

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI CORP.-MEMORY AND STORAGE SOLUTIONS (F/K/

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI SOC CORP., A CALIFORNIA CORPORATION, CAL

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI FREQUENCY AND TIME CORPORATION, A DELAWA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI COMMUNICATIONS, INC. (F/K/A VITESSE SEMI

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI CORPORATION, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

Owner name: MICROSEMI CORP.-ANALOG MIXED SIGNAL GROUP, A DELAW

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:037558/0711

Effective date: 20160115

AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., NEW YORK

Free format text: PATENT SECURITY AGREEMENT;ASSIGNORS:MICROSEMI CORPORATION;MICROSEMI SEMICONDUCTOR (U.S.) INC. (F/K/A LEGERITY, INC., ZARLINK SEMICONDUCTOR (V.N.) INC., CENTELLAX, INC., AND ZARLINK SEMICONDUCTOR (U.S.) INC.);MICROSEMI FREQUENCY AND TIME CORPORATION (F/K/A SYMMETRICON, INC.);AND OTHERS;REEL/FRAME:037691/0697

Effective date: 20160115