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 Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • 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
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • 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 Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
MicroZed Hardware Design Running a ON Python 1300 Module with different parameters
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Avnet Boards Forums requires membership for participation - click to join
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 3 replies
  • Subscribers 302 subscribers
  • Views 436 views
  • Users 0 members are here
Related

Running a ON Python 1300 Module with different parameters

100masc
100masc over 8 years ago

Dear Python developers, dear Alberta/Mario!


We're trying to get a ON Python 1300 module up and running on a microZed board with avnet provided onsemi_python_cam cores and provided bare metal software (from https://github.com/Avnet/hdl).

Reference Design http://zedboard.org/sites/default/files/design/EMBV_PYTHON1300C_HLS_2015_4_02.zip works.

Due to the hardware restrictions in our future product design we would like to run the following configuration, which differs in some central parameters from the reference implementation and onsemi core configuration:
- only 1 instead of 4 LVDS data channels (because we would like to use a cable to transfer the data, therefore a low count of pairs is desired)
- 10bit instead of 8bit pixels
- external LVDS clock instead of external PLL clock (also, because we would like to use a cable)
- just bw image instead of color (not important)
- also we would like to use binning and e.g. SVGA resolution (I think only relevant for bandwidth usage)

Quick calc: 1 LVDS DDR data channel at 135MHz can transfer 27 mega 10b-pixel per second; this results in around 28fps. Good enough.

In the first run we didn't used the onsemi cores at all and designed all ourselves. But we can't get the deserialization stable. Therefore we decided to give the onsemi cores a chance.

Unfortunately this core is hardcoded to use 4 LVDS channels (especially in deserialization section).
I tried to reduce the core (hard coded) to use only one LVDS channel - but to be honest, i haven't fully understood the design architecture (especially deserialization), also my "mother tongue" is Verilog not VHDL. I essence: I'm not aware of the pitfalls while trying this.

Besides the adaption of the onsemi core, another problem is the content of the initialization sequences and configuration registers which of course also have to be altered for 1 LVDS data channel usage (reg 32 and 211?)

Has anybody done something similar to this and can give me some hints. What are the main pitfalls while deserialize the python output? Or rather the adaption of the onsemi core to the above mentioned parameters?

Work done so far (with the onsemi cores):
- changed component.xml to allow 1 LVDS data channel
- altered mainly onsemi_vita_cam_core.vhd to only use 1 LVDS data channel (best effort, don't understand the internals fully)
- setup bare metal SDK, talking to the cores and talking to python works.
- altered register uploads to use 1 LVDS channel
- unfortunately iserdes alignment fails.

Note: with my own implementation of alignment and bitslip I've seen already decoded sync channel bits and  incrementing data channel bits on my scope from the python in testpattern mode. But this seems to work only at random, it's not stable. After some powercycle it works, sometimes not...

Any help appreciated. Thanks a lot!

Bye, Marc.

  • Sign in to reply
  • Cancel
Parents
  • lulanord
    0 lulanord over 8 years ago

    Hi...i am a new user here. I am trying to port Microzed ref design using Python and HDMI on SVDK running on Vivado 2015.2 instead of 2014.4.
    I now get an image from the Sensor of HDMI but it contains artifacts. When using test pattern generator I don't get any artifacts. Those artifact are vertical repetition every centimeters of around 6 to 8 pixels width random pixel colors.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • lulanord
    0 lulanord over 8 years ago

    Hi...i am a new user here. I am trying to port Microzed ref design using Python and HDMI on SVDK running on Vivado 2015.2 instead of 2014.4.
    I now get an image from the Sensor of HDMI but it contains artifacts. When using test pattern generator I don't get any artifacts. Those artifact are vertical repetition every centimeters of around 6 to 8 pixels width random pixel colors.

    • 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 © 2025 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