Altera_Forum
Honored Contributor
9 years agoQsys16 Custom Peripheral Problem
Hi there folks,
I recently posted a problem I have been having to integrate a custom peripheral into Qsys. The problem seems to manifest itself in both 15.1 and 16. I am using a MAX10SAE144GES device. Basically I am trying to create a Qsys peripheral from the vhd file attached, that will acts as a basic I2C master. 1.In order to do this I create a new component within qsys, and then analyze the file. and set up the corresponding signals and interfaces that require my attention (ie those not automatically assigned). 2.I then finish this and Qsys creates the HW tcl file I have attached. 3.I then put my new component into my qsys system, which I have also attached (albeit with the .txt extension which will need renaming to .sopcinfo). 4.FOr sanity I also included a GPIO pin that I can toggle to check everything else is ok. 5.The Qsys sytem then generates without any errors. 6.I then import it into my top level bdf file within quartus connect up the relevant pins and compile. Whcih all works fine! 7.I then generated a BSP and APP in the NIOS EDS tools and all that goes swimmingly. 8.In my software I can drive the GPIO pin perfectly however there is no response from the I2C peripheral even though it is present in the system.h file. SO I then started delving into things a little, In my VHDL file you will notice a line that outputs the avalon write signal to an output pin, at present this pin is assigned asynchronously but I have also done it under clkd assignment (registering). at no point EVER does this write signal change state (observed externally with a scope) when I try and talk through software to the peripheral. and more to the point if i try and examnine the signal in siognal tap i get no state change either. It looks to me as though there is a problem with the connection to the avalon bus, but examining the RTL netlist in quartus seems to suggest everything is connected ok. I would be grateful if someone could take a look at this please as hindering some critical work. Many thanks in advance deBoogle