Write a checker always block for inclusion in the testbench using the revised memory bus functional model of Exercise 9.10. The checker should verify that derivative pixels written to memory by the Sobel accelerator have the values determined in Exercise 9.11.
Exercise 9.11
Calculate the values of the derivative pixels that should result from Sobel edge detection of the synthetic image described in
Exercise 9.10.
Exercise 9.10
Revise the memory bus functional model code to provide a synthetic image (that is, an artificially constructed image) when locations in the original image are read. The synthetic image should contain a 320 × 240 white rectangle centered on a black background. Hint: use the memory address during a read to determine whether the location being accessed is within the image. If so, then calculate the row and column numbers from the address. If the row and columns lie within the rectangle, the memory should return white pixel values; otherwise, it should return black pixel values.