Digital signal processor with on-chip select decoder and wait state generator
AssigneeHitachi America, Ltd.
InventorToru Baji
Life of this patent
Estimating the term…
Abstract
A digital signal processor (DSP) provides an improvement in the interfacing and sharing of external memory devices. Specifically, the digital signal processor is provided with a parallel interface for communicating with external memory devices, a chip select decoder located on-chip for selectably enabling external memory devices, and a wait status controller for holding processor operation until the selected memory device is ready. The memory architecture is configurable for internal or external wait state generation and memory sharing with other DSPs so that a plurality of varying speed memory devices may be accessed. The chip select decoder includes a programmable register for storing a mode configuration word for defining a plurality of external memory configurations.
Claims9
A parallel interface for communicating on an external address bus and an external data bus with an external memory and for use in a digital signal processor having a plurality of separate internal data busses and internal address busses, said external memory having a particular memory configuration selected from among a plurality of memory configurations, said parallel interface comprising:
- means for selectably routing an address from a specific address bus of said internal address busses onto said external address bus and routing data between a specific data bus of said internal data busses and said external data bus when access to said external memory is requested;
- a chip select decoder having:
- a programmable chip select mode register for storing a mode configuration word that identifies said particular memory configuration from among said plurality of memory configurations;
- and
- a decoder circuit, responsive to both a plurality of bits of said address and said mode configuration word, for generating a chip select signal to enable a specific memory device of said external memory to be accessed with said address on said external address bus so as to receive or provide said data on said external data bus;
- and
- a wait status controller for generating an output wait release signal to indicate when said specific memory device is available for being accessed,
- said wait status controller having:
- a programmable wait state control register for storing a corresponding wait state packet for each memory device of said external memory, said wait state packet comprising a wait status indicator and a wait state count, said wait status indicator when set to a first predefined value indicating internal wait state generation and when set to a second predefined value indicating external wait state generation, said wait state count representative of a delay prior to allowing access to a corresponding memory device of said external memory;
- a first selector, responsive to said chip select signal from said decoder circuit, for selecting a wait state packet stored in said programable wait state control register corresponding to said specific memory device;
- a counter for generating a count of machine cycles of said digital signal processor when access to said external memory is requested;
- a comparator for comparing said wait state count of said selected wait state packet and said generated count and generating an internal wait release signal when said wait state count of said selected wait state packet and said generated count are equal;
- means, responsive to a ready signal generated by an external wait state generator indicating that said specific memory device is ready to be accessed, for generating an external wait release signal;
- and
- a second selector, responsive to said wait status indicator of said selected wait state packet, for selectably providing one of said internal wait release signal and said external wait release signal as said output wait release signal.
A method of interfacing with an external memory on an external address bus and an external data bus and for use in a digital signal processor having a plurality of separate internal data busses and internal address busses, said external memory having a particular memory configuration selected from among a plurality of memory configurations, said method comprising the steps of:
- selectably routing an address from a specific address bus of said internal address busses onto said external address bus and routing data between a specific data bus of said internal data busses and said external data bus when access to said external memory is requested;
- storing in a programmable chip select mode register of said digital signal processor a mode configuration word that identifies said particular memory configuration from among said plurality of memory configurations;
- and
- in response to both a plurality of bits of said address and said mode configuration word, generating a chip select signal to enable a specific memory device of said external memory to be accessed with said address on said external address bus so as to receive or provide said data on said external data bus;
- and
- generating an output wait release signal to indicate when said specific memory device is available for being accessed, said output wait release signal generating step including:
- storing in a programmable wait state control register of said digital signal processor a corresponding wait state packet for each memory device of said external memory, said packet comprising a wait status indicator and a wait state count, said wait status indicator when set to a first predefined value indicating internal wait state generation and when set to a second predefined value indicating external wait state generation, said wait state count representative of a delay prior to allowing access to a corresponding memory device of said external memory;
- in response to said chip select signal, selecting a wait state packet stored in said programmable wait state control register corresponding to said specific memory device;
- generating a count of machine cycles of said digital signal processor when access to said external memory is requested;
- comparing said wait count of said selected wait state packet and said generated count and generating an internal wait release signal when said wait state count of said selected wait state packet and said generated count are equal;
- in response to a ready signal generated by an external wait state generator indicating that said specific memory device is ready to be accessed, generating an external wait release signal;
- and
- in response to said wait status indicator of said selected wait state packet, selectably providing one of said internal wait release signal and said external wait release signal as said output wait release signal.
A digital signal processor comprising:
- a plurality of separate internal data busses and internal address busses;
- a parallel interface for communicating on an external address bus and an external data bus with an external memory, said external memory having a particular memory configuration selected from among a plurality of memory configurations, said parallel interface comprising:
- means for selectably routing an address from a specific address bus of said internal address busses onto said external address bus and routing data between a specific data bus of said internal data busses and said external data bus when access to said external memory is requested;
- a chip select decoder having:
- a programmable chip select register for storing a mode configuration word that identifies said particular memory configuration from among said plurality of memory configurations;
- and
- a decoder circuit, responsive to both a plurality of bits of said address and said mode configuration word, for generating a chip select signal to enable a specific memory device of said external memory to be accessed with said address on said external address bus so as to receive or provide said data on said external data bus;
- and
- a wait state controller for generating an output wait release signal to indicate when said specific memory device is available for being accessed,
- said wait state controller having:
- a programmable wait state control register for storing a wait state packet for each memory device of said external memory, said packet comprising a wait status indicator and a wait state count, said wait status indicator when set to a first predefined value indicating internal wait state generation and when set to a second predefined value indicating external wait state generation, said wait state count representative of a delay prior to allowing access to a corresponding memory device of said external memory;
- a first selector, responsive to said chip select signal from said decoder circuit, for selecting a wait state packet stored in said programmable wait state control register corresponding to said specific memory device;
- a counter for generating a count of machine cycles of said digital signal processor when access to said external memory is requested;
- a comparator for comparing said wait state count of said selected wait state packet and said generated count and generating an internal wait release signal when said wait state count of said selected wait state packet and said generated count are equal;
- means, responsive to a ready signal generated by an external wait state generator indicating that said specific memory device is ready to be accessed, for generating an external wait release signal;
- and
- a second selector, responsive to said wait status indicator of said selected wait state packet, for selectably providing one of said internal wait release signal and said external wait release signal as said output wait release signal.
Dependencies are inferred from the claim text.