IP Library Granted Patent US 8,516,317
Granted Patent B2
US 8,516,317 · App. 13/018,279 · Granted Aug 20, 2013

Methods for at-speed testing of memory interface

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,516,317
App. No.
13/018,279
Granted
Aug 20, 2013
Kind
B2
Abstract

Methods for at-speed testing of a memory interface associated with an embedded memory comprise two write operations in succession, two read operations in succession, and a capture operation using scan cells. The write and read operations are performed during a single clock burst, two separate clock bursts in a clock signal, or two separate clock bursts in separate clock signals.

Claims (67)

1. A method for testing a memory interface at-speed, comprising:

scanning in input data;

performing one or more write operations on a memory using the input data during a first clock burst, the memory being associated with the memory interface being tested;

performing one or more read operations on the memory during a second clock burst, the one or more read operations starting after the one or more write operations are completed;

capturing output data from the memory interface with scannable memory elements during the second clock burst, the output data corresponding to the one or more read operations; and

scanning out the output data from the scannable memory elements.

2. The method recited in claim 1 , wherein the first clock burst precedes the second clock burst in a same clock signal.

3. The method recited in claim 1 , wherein the first clock burst and the second clock burst are in separate clock signals.

4. The method recited in claim 1 , wherein the capturing can be suppressed when the memory interface outputs unknown values.

5. The method recited in claim 1 , wherein the input data include, if the memory has a plurality of write ports, a write port selection code for selecting a write port from the plurality of write ports to perform the one or more write operations during the first clock burst.

6. The method recited in claim 1 , wherein one or more clock cycles in the first clock burst, the second clock burst or both run at a slower frequency than the other clock cycles in the same clock burst.

7. The method recited in claim 1 , further comprising:

launching initialization information before the one or more write operations, the initialization information being included in or derived from the input data.

8. The method recited in claim 7 , wherein the initialization information comprises an initialization address and an initialization data word.

9. The method recited in claim 8 , wherein the one or more write operations comprises:

writing the initialization data word to a first memory location corresponding to the initialization address; and

writing a final data word to a second memory location corresponding to a final address.

10. The method recited in claim 9 , wherein the initialization address and the final address are derived using a reference address, the reference address being included in the input data and stored in an address register.

11. The method recited in claim 9 , wherein the one or more read operations comprise:

reading the initialization data word from the first memory location corresponding to the initialization address; and

reading the final data word from the second memory location corresponding to the final address.

12. The method recited in claim 9 , wherein the one or more read operations comprise:

reading the final data word from the second memory location corresponding to the final address; and

reading the initialization data word from the first memory location corresponding to the initialization address.

13. The method recited in claim 7 , wherein the initialization information comprises an initialization data word.

14. The method recited in claim 13 , wherein the one or more write operations comprises:

writing the initialization data word to all memory locations; and

if a write enable signal is active, writing one or more final data words to one or more memory locations.

15. The method recited in claim 14 , wherein the one or more read operations comprise:

reading from a first memory location corresponding to a first address; and

if a read enable signal is active, reading from a second memory location corresponding to a second address.

16. A circuit, comprising:

a memory;

a memory interface associated with the memory; and

a plurality of scannable memory elements configured at least to scan in data for performing a method for testing the memory interface at-speed, the method comprising:

scanning in input data;

performing one or more write operations on the memory using the input data during a first clock burst;

performing one or more read operations on the memory during a second clock burst, the one or more read operations starting after the one or more write operations are completed;

capturing output data from the memory interface during the second clock burst, the output data corresponding to the one or more read operations; and

scanning out the output data.

17. The circuit recited in claim 16 , further comprising:

a sequencer configured to generate control signals for each clock signal.

18. The circuit recited in claim 16 , wherein the first clock burst precedes the second clock burst in a same clock signal.

19. The circuit recited in claim 16 , wherein the first clock burst and the second clock burst are in separate clock signals.

20. The circuit recited in claim 16 , wherein the capturing can be suppressed when the memory interface outputs unknown values.

21. The circuit recited in claim 16 , wherein the input data include, if the memory has a plurality of write ports, a write port selection code for selecting a write port from the plurality of write ports to perform the one or more write operations during the first clock burst.

22. The circuit recited in claim 16 , wherein one or more clock cycles in the first clock burst, the second clock burst or both run at a slower frequency than the other clock cycles in the same clock burst.

23. The circuit recited in claim 16 , wherein the method further comprising:

launching initialization information before the one or more write operations, the initialization information being included in or derived from the input data.

24. The circuit recited in claim 23 , wherein the initialization information comprises an initialization address and an initialization data word.

25. The circuit recited in claim 24 , wherein the one or more write operations comprises:

writing the initialization data word to a first memory location corresponding to the initialization address; and

writing a final data word to a second memory location corresponding to a final address.

26. The circuit recited in claim 25 , wherein the initialization address and the final address are derived using a reference address, the reference address being included in the input data and stored in an address register.

27. The circuit recited in claim 25 , wherein the one or more read operations comprise:

reading the initialization data word from the first memory location corresponding to the initialization address; and

reading the final data word from the second memory location corresponding to the final address.

28. The circuit recited in claim 25 , wherein the one or more read operations comprise:

reading the final data word from the second memory location corresponding to the final address; and

reading the initialization data word from the first memory location corresponding to the initialization address.

29. The circuit recited in claim 23 , wherein the initialization information comprises an initialization data word.

30. The circuit recited in claim 29 , wherein the one or more write operations comprises:

writing the initialization data word to all memory locations; and

if a write enable signal is active, writing one or more final data words to one or more memory locations.

31. The circuit recited in claim 30 , wherein the one or more read operations comprise:

reading from a first memory location corresponding to a first address; and

if a read enable signal is active, reading from a second memory location corresponding to a second address.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Jun 29, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 056702/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2011
From: NADEAU-DOSTIE, BENOIT; COTE, JEAN-FRANCOIS
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 026041/0442 →