15.08.2013 Views

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.2.8.3 Scratchpad Memory (scratchpad_integrity) Test<br />

The scratchpad memory in a 1 – Wire® slave device is written to and read from using the<br />

WRITE_SP (0x0Fh) and READ_SP (0xAAh) commands. The eight bytes of data being written<br />

are random and are stored at the bus functional model (i.e. Verilog® code software) while also<br />

being written to the one_wm block and sent across to the 1 – Wire® slave device. The data<br />

written to the slave device is then read back and compared to the previously stored value in the<br />

bus functional model. This test also verifies proper operation of the device addressing<br />

instruction SKIP_ROM (0xCC).<br />

For the eight bytes of random data the Verilog® statistical function $random() was used.<br />

The $random() function returns a new 32-bit random number each time it is called. The return<br />

type is a signed integer. An optional seed_expression can be used to control the random number<br />

generation and must be a signed integer value, a register, or a time variable. Additionally the<br />

modulus operator % can be used to restrict the return value (i.e. for b > 0,<br />

$random(seed_expression) %b will restrict the random number returned to (-b + 1) : (b – 1) [88].<br />

For this test only a single 1 – Wire® slave exists on the 1 – Wire® network. Figure 5.12<br />

shows the setup configuration used to conduct this test. Just like the previous test cases, any<br />

configurable FPGA I/O pin on the Altera DE2 Development and Education board can serve as<br />

the 1 – Wire Master I/O pin. Only 1 – Wire® devices having an internal scratchpad area in<br />

memory were used to conduct this test (See Table 5.6). As was done in the previous tests, the 1<br />

– Wire® devices listed in Table 5.6 were hot swapped during execution of the test to check for<br />

data integrity and failures in the design of the 1 – Wire® network. The test results, summarized<br />

in Table 5.6, verified that the correct single ROM_ID was found by the Search ROM Accelerator<br />

136

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!