Altera_Forum
Honored Contributor
12 years agoSimple custom 32x16bit register slave for Qsys Avalon MM interface
Hello people,
I quite new to FPGA design and not to mention Qsys! I am trying to make a collection of 32 x 16bit registers used in a Qsys system to store data coming from a parallel port. My focus right now it to design a custom Qsys slave component that conforms to the Avalon MM interface. These registers will map to 32 16bit memory addresses (so 64Bytes of mapped memory). My main question is which Avalon MM signals are obligatory for this application? At first read I thought that I should need: - Clock - Reset - readdata (0..15) - writedata (0..15) - byteenable (0..1) (i do not need to assess each byte separately, so do I need this?) - read - write - chipselect (0..5) (Here is my basic question!) The chipselect question is: How does the Avalon MM system defines which component to choose based on the address? Is it done automatically? I followed the university program tutorial ''Making Qsys components'' where the Altera Monitor program was used to alter the memory directly. There the chipselect signal was used inside the component code to determine if the device was selected. When I removed the chipselect from the checks I got strange results. Why did this happen? When someone changes memory values in the Altera Monitor program what happens exactly? Is there a debug device inside the chip that acts as Master and writes the data I enter into the addresses that I choose from the Altera Monitor program? Thanks a lot in advance