element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet & Tria Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
ZUBoard Custom AXI4 Lite I2C checking
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 10 replies
  • Subscribers 350 subscribers
  • Views 123 views
  • Users 0 members are here
  • i2c
  • ZUBoard 1CG
  • AXI4
Related

Custom AXI4 Lite I2C checking

MATRIX7878
MATRIX7878 1 day ago

Hello,

       I have been working on a custom AXI4 Lite I2C core for the ZuBoard 1CG on board temp sensor.  The best I can do is read back a value of 0x00 for the WHO_AM_I register.  It should be 0xA0.  Since Xilinx's AXI4 IP creator is broken, I have created a custom AXI4 protocol.  I need help understanding what the problem with my design is.  I do not know if it is with my VHDL, or my C.  Everything in my C executes, so it seems like the hardware I built does not have errors in it, it just does not work.  The VHDL is 2019 version: MATRIX7878/AXI4-I2C: A simple I2C for AXI4.  I have confirmed the sensor works by using the Avnet IIC temp sensor AXI4.

Thank you

  • Sign in to reply
  • Cancel

Top Replies

  • michaelkellett
    michaelkellett 1 day ago +2
    Have you simulated your design ? If not, then simulate and get the simulation working. As a general rule, a design might not work in hardware even if the simulation works, but it will never work in…
  • padudle
    padudle 1 day ago +1
    I don't know what you mean by "AXI4 IP creator is broken". I use it all the time in recent Vivado releases. The Xilinx I2C core is not perfect but I am using it right now without problem. It will be much…
Parents
  • embeddedguy
    0 embeddedguy 14 hours ago

    Is there any example for AXI I2C ? I want to try that too. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • iksevas
    0 iksevas 13 hours ago in reply to embeddedguy

    All you have to do is add the AXI I2C to your block design in Vivado (mapped to the I2C interface that you are targeting). Import the design XSA into Vitis and create a new platform based on the XSA. Then navigate in Vitis to the drivers that get created based on your XSA within the BSP. Find the AXI I2C driver and look all the way to the right in the driver window. You will see an option to IMPORT EXAMPLE designs. Pick the example design with best fits your targeted application. Hope this helps.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • MATRIX7878
    0 MATRIX7878 9 hours ago in reply to iksevas

    I am using my I2C protocol so I can take advantage of the PL and PS combo and it is a great way (for me) to learn and see first-hand how the communication works.  I tested the IIC AXI for the onboard temp sensor and it works, but when I use my AXI4 I made, I see my lines are stuck low or just sending noise.  My variable in my C file is 0x00.  As it is I2C, I would expect a line of 0xFF if the bus failed.  I do not think I am communicating from the PL to the PS correctly.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • MATRIX7878
    0 MATRIX7878 9 hours ago in reply to iksevas

    I am using my I2C protocol so I can take advantage of the PL and PS combo and it is a great way (for me) to learn and see first-hand how the communication works.  I tested the IIC AXI for the onboard temp sensor and it works, but when I use my AXI4 I made, I see my lines are stuck low or just sending noise.  My variable in my C file is 0x00.  As it is I2C, I would expect a line of 0xFF if the bus failed.  I do not think I am communicating from the PL to the PS correctly.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
No Data
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube