System and method for emulating memory
First Claim
1. An emulation memory comprising:
- a memory circuit having an address port and a data port;
an address circuit having an address output port coupled to said address port, said address circuit being programmable, said address circuit mapping a set of addresses of a plurality of target memories to a set of emulation memory addresses over a set of time periods, said set of target memories includes a first target memory of a first type and a second target memory of a second type, said first target memory and said second target memory for receiving addresses during a single cycle of a target design, and wherein said address circuit is for generating a first emulation address corresponding to a first target memory address during a first cycle of said emulation memory, and a second target memory address corresponding to a second target memory address during a second cycle of said emulation memory.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for emulating memory designs is described. The system includes a time sliced logic emulator. The time sliced logic emulator emulates the functions performed in one cycle of a target design by emulating portions of the functions in a set of time slices. That is, a set of time slices represents a single clock cycle in the target design. The system emulates many different types of memory designs included in the target design. The system includes an emulation memory. The memory designs are mapped to the emulation memory via a programmable address generation block. For a given time slice, the programmable address generation block generates an address that maps all or part of a memory design address to an emulation memory address. The programmable address generation block allows multiple memory designs to be mapped to a single emulation memory and allows a single memory design to be mapped to multiple emulation memories. Thus, over multiple time slices, the system can emulate many different types of memories.
-
Citations
8 Claims
-
1. An emulation memory comprising:
-
a memory circuit having an address port and a data port; an address circuit having an address output port coupled to said address port, said address circuit being programmable, said address circuit mapping a set of addresses of a plurality of target memories to a set of emulation memory addresses over a set of time periods, said set of target memories includes a first target memory of a first type and a second target memory of a second type, said first target memory and said second target memory for receiving addresses during a single cycle of a target design, and wherein said address circuit is for generating a first emulation address corresponding to a first target memory address during a first cycle of said emulation memory, and a second target memory address corresponding to a second target memory address during a second cycle of said emulation memory.
-
-
2. An emulation memory comprising:
-
a memory circuit having an address port and a data port; an address circuit having an address output port coupled to said address port, said address circuit being programmable, said address circuit mapping a set of addresses of a plurality of target memories to a set of emulation memory addresses over a set of time periods, said emulation memory further including a first memory circuit and a second memory circuit, each memory circuit for storing an N words of data, and wherein said set of target memories includes a first target memory design for storing a M words of data, where M is greater than N, and wherein said address circuit includes a first address circuit for generating a first set of emulation addresses for said first memory corresponding to N words of data of said M words of data, and wherein said address circuit includes a second address circuit for generating a set of second emulation addresses for said second memory corresponding to M-N words of data of said M words of data. - View Dependent Claims (3)
-
-
4. An emulation memory comprising:
-
a memory circuit having an address port and a data port; an address circuit having an address output port coupled to said address port, said address circuit being programmable, said address circuit mapping a set of addresses of a plurality of target memories to a set of emulation memory addresses over a set of time periods; a first memory circuit for storing an N bit wide data word, and wherein said set of target memories includes a first target memory design for storing a M bit wide data word, where M is greater than N, and wherein said address circuit includes a first address circuit for generating a first emulation address for said first memory corresponding to N bits of said M bit wide data word, and wherein said first address circuit is for generating a second emulation address for said first memory circuit corresponding to M-N bits of said M bit wide data word. - View Dependent Claims (5)
-
-
6. a method of emulating a set of memory designs in an emulator, said emulator including an address circuit and a memory circuit, said memory circuit includes a set of emulation memories, each emulation memory being N bits in size, and wherein a first memory design being M bits in size, M being greater than N said method comprising:
-
mapping each memory design to an address space in said memory circuit and to a set of time slices, said set of time slices corresponding to a cycle in said each memory design, said mapping step further comprising; mapping N low order bits of said first memory design to a first emulation memory; mapping M-N high order bits of said first memory design to a second emulation memory; responsive to receiving a memory design function command, performing the following, generating a set of memory addresses in said address space over a corresponding set of time slices; and performing a set of memory functions on said memory circuit over said corresponding set of time slices and using said set of memory addresses, said set of memory functions emulation said memory design function. - View Dependent Claims (7)
-
-
8. A method of emulating a set of memory designs in an emulator, said emulator including an address circuit and a memory circuit, said memory circuit includes an emulation memory having a 32 bit word and wherein a first memory design having a 64 bit wide word said method comprising:
-
mapping each memory design to an address space in said memory circuit and to a set of time slices, said set of time slices corresponding to a cycle in said each memory design, said mapping step further comprises; mapping bits 31-0 of said 64 bit wide word to a first word of a first pair of words in said emulation memory; and mapping bits 63-32 of said 64 bit wide word to a second word of said first pair of words; responsive to receiving a memory design function command, performing the following, generating a set of memory addresses in said address space over a corresponding set of time slices; and performing a set of memory functions on said memory circuit over said corresponding set of time slices and using said set of memory addresses, said set of memory functions emulating said memory design function.
-
Specification