<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ZedBoard Hardware Design - Recent Threads</title><link>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><lastBuildDate>Tue, 24 Jun 2025 14:39:07 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design" /><item><title>Vivado BRAM Instantiation Issues</title><link>https://community.element14.com/thread/55900?ContentTypeID=0</link><pubDate>Tue, 24 Jun 2025 14:39:07 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:ecfd34c5-740a-4bc5-bfef-2657e1964980</guid><dc:creator>dniemann17</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/55900?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55900/vivado-bram-instantiation-issues/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hello!&lt;/p&gt;
&lt;p&gt;We are currently working on a project which requires us to extend a previously created memory interface on a ZedBoard from being 4k in size to 256k (A 1/4 of a MB).&amp;nbsp;&lt;br /&gt;We had previously created a file, called pocket_core_top_mem.v which instantiated a 4k long memory (4&amp;nbsp;&lt;span&gt;xilinx_tdpram_1024x36&amp;nbsp;modules) that has been working for the longest time.&amp;nbsp;This&amp;nbsp;old interface used only 4 blocks of 140 available Block RAM modules on the zedboard for the project (50 blocks are used elsewhere, leaving 86 remaining).&lt;br /&gt;&lt;/span&gt;&lt;span&gt;[View:/cfs-file/__key/communityserver-discussions-components-files/319/pocket_5F00_core_5F00_top_5F00_mem.v.txt:40:47]&lt;br /&gt;&lt;/span&gt;While doing this, we simply started by trying to nest multiple memory files (using &lt;span&gt;xilinx_tdpram_1024x36 modules)&lt;/span&gt;, where we would have a .v file and module for 16k ram (4 4k modules), a file for 64k ram (4 16k modules), and finally a top file which consisted of 4 64k modules. (called pocket_core_mem_16k.v, pocket_core_mem_64k.v, and pocket_core_top_mem_nested.v here).&lt;br /&gt;[View:/cfs-file/__key/communityserver-discussions-components-files/319/pocket_5F00_core_5F00_mem_5F00_16k.v.txt:40:47][View:/cfs-file/__key/communityserver-discussions-components-files/319/pocket_5F00_core_5F00_mem_5F00_64k.v.txt:40:47][View:/cfs-file/__key/communityserver-discussions-components-files/319/pocket_5F00_core_5F00_top_5F00_mem_5F00_nested.v.txt:40:47]&lt;br /&gt;Unfortunately, when we went to build the project, it ran through with no errors and wrote the bitstream but unfortunately only 2 RAM blocks were instantiated in the implemented design and I was only able to read and write to 0x100 of the memory space I programmed in. In Vivado, it was only reporting that 51 of the 140 RAM blocks were instantiated.&lt;br /&gt;So, I then created and ran a simulation in Icarus Verilog on my files to see if I could indeed read and write to the higher address blocks. This simulation worked and proved my files didn&amp;#39;t have a design error.&lt;br /&gt;&lt;br /&gt;I was dumbstruck and thought it was how Vivado interpreted my file methodology that was making the error occur. So, I then simply made a single file (named pocket_core_top_mem_single.v here) with 64 xilinx_tdpram_1024x36 modules in it.&amp;nbsp;&lt;br /&gt;This STILL only had 2 RAM blocks instantiated when Vivado finished building and writing the bitstream:&lt;br /&gt;&lt;img style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/pastedimage1750776731868v6.png" alt=" " /&gt;&lt;br /&gt;I also ran simulations to confirm if this file worked or not, and they confirmed the file worked.&lt;br /&gt;[View:/cfs-file/__key/communityserver-discussions-components-files/319/pocket_5F00_core_5F00_top_5F00_mem_5F00_single.v.txt:40:47]&lt;br /&gt;&lt;br /&gt;Would there be anything that could be preventing Vivado from instantiating these 64 BRAM blocks that I may have missed?&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;Daniel&lt;/p&gt;</description></item><item><title>Configure core0 with petalinux and core1 baremetal on Zedboard 2018.3</title><link>https://community.element14.com/thread/55738?ContentTypeID=0</link><pubDate>Tue, 29 Apr 2025 12:04:18 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:51bec52b-816c-4d16-a0a9-176c93074373</guid><dc:creator>caferba</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/55738?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55738/configure-core0-with-petalinux-and-core1-baremetal-on-zedboard-2018-3/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;Hello,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;I am working with the Zedboard 2018.3 Rev F and I&amp;#39;m having issues when trying to launch an application on CPU1 from petalinux 2018.3 on CPU0. After loading the firmware and starting&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span class="uiOutputText" dir="ltr"&gt;nothing happens&lt;/span&gt;&lt;/strong&gt;&lt;span class="uiOutputText" dir="ltr"&gt;. It seems that the baremetal application on cpu1 is not starting. I have followed the UG1186 documentation for A9-zynq platforms.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;root@avnet-digilent-zedboard-2018_3:/lib/firmware# echo hello-linux.elf &amp;gt; /sys/class/remoteproc/remoteproc0/firmware&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;root@avnet-digilent-zedboard-2018_3:/lib/firmware# echo start &amp;gt; /sys/class/remoteproc/remoteproc0/state&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;remoteproc remoteproc0: powering up remoteproc@0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;remoteproc remoteproc0: Booting fw image hello-linux.elf, size 2534900&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;remoteproc remoteproc0: registered virtio0 (type 7)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;remoteproc remoteproc0: remote processor remoteproc@0 is now up&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;root@avnet-digilent-zedboard-2018_3:/lib/firmware# virtio_rpmsg_bus virtio0: rpmsg host is online&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/image.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;system-user.dtsi:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;/include/ &amp;quot;system-conf.dtsi&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;/ {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;chosen&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;bootargs = &amp;quot;uio_pdrv_genirq.of_id=generic-uio&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;/ {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;reserved-memory {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&lt;/span&gt;&lt;span class="cuf-entityLinkId forceChatterEntityLink" data-id="" data-hashtag="address-cells" data-mention="#address-cells"&gt;&lt;span class="uiOutputText" dir="ltr"&gt;#address-cells&lt;/span&gt;&lt;/span&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;= &amp;lt;1&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="cuf-entityLinkId forceChatterEntityLink" data-id="" data-hashtag="size-cells" data-mention="#size-cells"&gt;&lt;span class="uiOutputText" dir="ltr"&gt;#size-cells&lt;/span&gt;&lt;/span&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;= &amp;lt;1&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ranges;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;vdev0vring0: vdev0vring0@3e800000 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;no-map;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;compatible = &amp;quot;shared-dma-pool&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;reg = &amp;lt;0x3e800000 0x4000&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;vdev0vring1: vdev0vring1@3e804000 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;no-map;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;compatible = &amp;quot;shared-dma-pool&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;reg = &amp;lt;0x3e804000 0x4000&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;vdev0buffer: vdev0buffer@3e808000 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;no-map;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;compatible = &amp;quot;shared-dma-pool&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;reg = &amp;lt;0x3e808000 0x100000&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rproc_0_reserved: rproc@3e000000 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no-map;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg =&amp;nbsp;&amp;lt;0x3ed00000 0x00400000&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;amba {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;elf_ddr_0: ddr@0 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compatible = &amp;quot;mmio-sram&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;reg = &amp;lt;0x3e000000 0x400000&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;remoteproc0: remoteproc@0 {&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compatible = &amp;quot;xlnx,zynq_remoteproc&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;firmware = &amp;quot;firmware&amp;quot;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;vring0 = &amp;lt;15&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;vring1 = &amp;lt;14&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;srams = &amp;lt;&amp;amp;elf_ddr_0&amp;gt;;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;Thank you&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="uiOutputText" dir="ltr"&gt;Carlos&lt;/span&gt;&lt;/p&gt;</description></item><item><title>Connecting Zedboard to Vivado - Hardware Manager not Detecting</title><link>https://community.element14.com/thread/55641?ContentTypeID=0</link><pubDate>Fri, 21 Mar 2025 19:12:04 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:62e23a6d-4dd8-4926-aa80-523443b807e7</guid><dc:creator>eb_air</dc:creator><slash:comments>4</slash:comments><comments>https://community.element14.com/thread/55641?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55641/connecting-zedboard-to-vivado---hardware-manager-not-detecting/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I have been struggling to detect my Zedboard on Vivado&amp;#39;s Hardware Manager run in a Linux OS. When I went into the Hardware Manager, I could connect into the local hardware server, but the Zedboard did not show up. I used version 2023.2 and 2022.2, but both versions had the same problem. I tried the JTAG and UART modes with no success. I am confused with the problem here because if I run lsusb, I see &amp;quot;232H Single HS USB-UART/FIFO IC&amp;quot; for the JTAG interface and &amp;quot;Cypress Semiconductor Corp. CDC ACM serial port&amp;quot;, which I assume means the drivers are properly installed.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Is there something I am doing wrong here?&lt;/p&gt;</description></item><item><title>RE: Connecting Zedboard to Vivado - Hardware Manager not Detecting</title><link>https://community.element14.com/thread/227553?ContentTypeID=1</link><pubDate>Mon, 24 Mar 2025 14:12:20 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:764ff8c4-3f1c-41da-9aa1-9bc4014a36c0</guid><dc:creator>eb_air</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/227553?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55641/connecting-zedboard-to-vivado---hardware-manager-not-detecting/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Alright, I will look into that.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Connecting Zedboard to Vivado - Hardware Manager not Detecting</title><link>https://community.element14.com/thread/227536?ContentTypeID=1</link><pubDate>Sat, 22 Mar 2025 13:56:19 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:016093e2-c04f-4b0f-a4c5-cd36ddd5075e</guid><dc:creator>dyessgg</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/227536?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55641/connecting-zedboard-to-vivado---hardware-manager-not-detecting/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;If I remember correctly, that is the location of the script.&amp;nbsp; It&amp;#39;s actually just setting up some udev rules for the USB device.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Connecting Zedboard to Vivado - Hardware Manager not Detecting</title><link>https://community.element14.com/thread/227532?ContentTypeID=1</link><pubDate>Sat, 22 Mar 2025 03:22:48 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:52d53ac4-127c-4d21-8df1-49ce5dfb0239</guid><dc:creator>eb_air</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/227532?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55641/connecting-zedboard-to-vivado---hardware-manager-not-detecting/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I have not done that yet. Is that in &amp;quot;&lt;span style="background-color:#ffffff;color:#000000;float:none;font-family:Aptos, sans-serif;font-size:14.6667px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;data/xicom/cable_drivers/lin64/install_script/install_driver&amp;quot; ? If not, where can I find it?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Connecting Zedboard to Vivado - Hardware Manager not Detecting</title><link>https://community.element14.com/thread/227530?ContentTypeID=1</link><pubDate>Fri, 21 Mar 2025 23:23:15 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:b52d1e86-571c-4f39-a583-d58bdc56899c</guid><dc:creator>dyessgg</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/227530?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55641/connecting-zedboard-to-vivado---hardware-manager-not-detecting/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Did you load the JTAG cable drivers?&amp;nbsp; They don&amp;#39;t install as part of Vivado installation.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Je1 GPIO - Cant seem to access upper pins</title><link>https://community.element14.com/thread/227439?ContentTypeID=1</link><pubDate>Fri, 14 Mar 2025 17:03:11 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:429f9fd0-de51-4e80-a30e-c017e4b01b23</guid><dc:creator>PurplePig</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/227439?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55622/je1-gpio---cant-seem-to-access-upper-pins/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;The memory Viewer was not accurate. I added a printf and hot the expected value. XSCT could not read that address.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" style="max-height:360px;max-width:640px;"  src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/MemoryViewerIssue.png" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Je1 GPIO - Cant seem to access upper pins</title><link>https://community.element14.com/thread/55622?ContentTypeID=0</link><pubDate>Fri, 14 Mar 2025 11:33:58 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:42241f29-80eb-4e4a-9b59-cf79f3a9d015</guid><dc:creator>PurplePig</dc:creator><slash:comments>2</slash:comments><comments>https://community.element14.com/thread/55622?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55622/je1-gpio---cant-seem-to-access-upper-pins/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div&gt;&lt;span&gt;# &lt;/span&gt;&lt;span&gt;Xilinx Zedboard (Zynq 7020) GPIO 0&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;I am working with a new Zedboard with the Zynq 7020 processor.&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;I was trying to strobe the pins on the JE1 PMOD port&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/JE1_5F00_PMOD_5F00_MIO.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp;To this end I defined the following pins&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;File: helloworld.c&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;61: int &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; iPortPins[10];&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;62: &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;63: #define JE1 &amp;nbsp; &amp;nbsp; 13&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;64: #define JE2 &amp;nbsp; &amp;nbsp; 10&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;65: #define JE3 &amp;nbsp; &amp;nbsp; 11&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;66: #define JE4 &amp;nbsp; &amp;nbsp; 12&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;67: #define JE7 &amp;nbsp; &amp;nbsp; 0&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;68: #define JE8 &amp;nbsp; &amp;nbsp; 9&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;69: #define JE9 &amp;nbsp; &amp;nbsp; 14&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;70: #define JE10 &amp;nbsp; &amp;nbsp;15&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;71: #define LED &amp;nbsp; &amp;nbsp; 7&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;72: &lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;and configured them as follows&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/MIO_5F00_CTRL_5F00_unmodified.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;defined as&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/MIO_5F00_PIN_5F00_00.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;what I had observed as that the GPIO_0 DIRM and OEN were not allowing the GPIO 0 pins to&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;drive the PMOD so I explicitly set them&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;What I observed is I was only able to write the lower 8 bits of each of these registers.&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/iMask.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;### &lt;/span&gt;&lt;span&gt;before&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/GPIO0_5F00_DIRM_5F00_OEN_5F00_before.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;code to change &lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;span&gt;DIRM&lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;span&gt; and &lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;span&gt;OEN&lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; u32 pGPIO_0_DIRM = 0xE000A204;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Xil_Out32(pGPIO_0_DIRM, (u32)(iMask));&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; u32 pGPIO_0_OEN = 0xE000A208;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Xil_Out32(pGPIO_0_OEN, (u32)(iMask));&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;### &lt;/span&gt;&lt;span&gt;after&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;img style="max-height:360px;max-width:640px;" alt=" " src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/GPIO0_5F00_DIRM_5F00_OEN_5F00_after.png" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;Note that bits 8-15 were ignored.&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;This is also the case if I try to modify them from the ide memory window. If I write 0xffffffff only the lower 8 bits are modified.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;(Both DIRM and OEN)&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;Why is this?&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description></item><item><title>RE: Je1 GPIO - Cant seem to access upper pins</title><link>https://community.element14.com/thread/227433?ContentTypeID=1</link><pubDate>Fri, 14 Mar 2025 11:41:02 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:5ac7f42c-9acb-4402-a4b5-5d793818fa63</guid><dc:creator>PurplePig</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/227433?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55622/je1-gpio---cant-seem-to-access-upper-pins/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Source&lt;pre class="ui-code" data-mode="text"&gt;/******************************************************************************
*
* Copyright (C) 2009 - 2014 Xilinx, Inc.  All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the &amp;quot;Software&amp;quot;), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* Use of the Software is limited solely to applications:
* (a) running on a Xilinx device, or
* (b) that interact with a Xilinx device through a bus or interconnect.
*
* THE SOFTWARE IS PROVIDED &amp;quot;AS IS&amp;quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* XILINX  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* Except as contained in this notice, the name of the Xilinx shall not be used
* in advertising or otherwise to promote the sale, use or other dealings in
* this Software without prior written authorization from Xilinx.
*
******************************************************************************/

/*
 * helloworld.c: simple test application
 *
 * This application configures UART 16550 to baud rate 9600.
 * PS7 UART (Zynq) is not initialized by this application, since
 * bootrom/bsp configures it to baud rate 115200
 *
 * ------------------------------------------------
 * | UART TYPE   BAUD RATE                        |
 * ------------------------------------------------
 *   uartns550   9600
 *   uartlite    Configurable only in HW design
 *   ps7_uart    115200 (configured by bootrom/bsp)
 */

#include &amp;lt;stdio.h&amp;gt;
#include &amp;quot;platform.h&amp;quot;
#include &amp;quot;xil_printf.h&amp;quot;

#include &amp;quot;xgpiops.h&amp;quot;
#include &amp;quot;xparameters.h&amp;quot;

XGpioPs_Config	*psGPIO_Config = NULL;
XGpioPs 		my_Gpio;

int				Status;
int				Status2;

int				iPortPins[10];

#define JE1		13
#define JE2		10
#define JE3		11
#define JE4		12
#define JE7		0
#define JE8		9
#define JE9		14
#define JE10	15
#define LED		7

void pause(u32 u32Pause)
{
	volatile u32 ii = 0;
	for( ii = 0; ii&amp;lt; u32Pause; )
	{
		ii++;
	}
}

int main()
{
	volatile u32 	ii 		= 0;
	volatile u32 	iMask 	= 0;
	int				iPinCount = 0;

	init_platform();

	iPortPins[iPinCount++] = JE1;
	iPortPins[iPinCount++] = JE2;
	iPortPins[iPinCount++] = JE3;
	iPortPins[iPinCount++] = JE4;
	iPortPins[iPinCount++] = JE7;
	iPortPins[iPinCount++] = JE8;
	iPortPins[iPinCount++] = JE9;
	iPortPins[iPinCount++] = JE10;
	iPortPins[iPinCount++] = LED;


    print(&amp;quot;Hello World. \n\rBienvenidos!\n\r&amp;quot;);

//	SlcrUnlock();

//	u32 pUnlock = 0xF8000008;
//    Xil_Out32(pUnlock, (u32)(0xdf0d));

//    u32 pMIO_PIN_00 = 0xF8000700;
//    Xil_Out32(pMIO_PIN_00, (u32)(0x1601));
//    Xil_Out32(pMIO_PIN_00, (u32)(0x1601));
//    Xil_Out32(pMIO_PIN_00, (u32)(0x0601));

	psGPIO_Config 		= XGpioPs_LookupConfig( XPAR_PS7_GPIO_0_DEVICE_ID );
    Status 	= XGpioPs_CfgInitialize(&amp;amp;my_Gpio, psGPIO_Config, psGPIO_Config-&amp;gt;BaseAddr);

    if ((Status == 0) &amp;amp;&amp;amp; (Status2 == 0))
    {

    	for (ii=0; ii &amp;lt; iPinCount; ii++)
    	{
    		XGpioPs_SetDirectionPin( &amp;amp;my_Gpio, iPortPins[ii], 1);
    		XGpioPs_WritePin( &amp;amp;my_Gpio, iPortPins[ii], 1);
    		iMask = iMask | (1 &amp;lt;&amp;lt; iPortPins[ii]);
    	}

    	u32 pGPIO_0_DIRM = 0xE000A204;
    	Xil_Out32(pGPIO_0_DIRM, (u32)(iMask));

    	u32 pGPIO_0_OEN = 0xE000A208;
    	Xil_Out32(pGPIO_0_OEN, (u32)(iMask));

    	while(1)
    	{
	    	for (ii=0; ii &amp;lt; iPinCount; ii++)
	    	{
	    		XGpioPs_SetDirectionPin( &amp;amp;my_Gpio, iPortPins[ii], 1);
	    		XGpioPs_WritePin( &amp;amp;my_Gpio, iPortPins[ii], 0);
	    	}
        	pause(10000000);

	    	for (ii=0; ii &amp;lt; iPinCount; ii++)
	    	{
	    		XGpioPs_SetDirectionPin( &amp;amp;my_Gpio, iPortPins[ii], 1);
	    		XGpioPs_WritePin( &amp;amp;my_Gpio, iPortPins[ii], 1);
	    	}
        	pause(10000000);
    	}
    }

    print(&amp;quot;Successfully ran Hello World application&amp;quot;);
    cleanup_platform();
    return 0;
}
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART drivers not working in Win10 Pro/Home 64bit</title><link>https://community.element14.com/thread/227154?ContentTypeID=1</link><pubDate>Sat, 22 Feb 2025 00:39:18 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9f95af25-fd31-4e94-afd3-95920e17f686</guid><dc:creator>sunnykryoon</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/227154?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/36860/uart-drivers-not-working-in-win10-pro-home-64bit/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Thank you so much! I signed up here just to write this comment. I think this answer has saved a lot of people&amp;#39;s time over the past 8 years. You saved me a lot of time. Thank you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>UART drivers not working in Win10 Pro/Home 64bit</title><link>https://community.element14.com/thread/36860?ContentTypeID=0</link><pubDate>Wed, 15 Mar 2017 13:09:37 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:d295143e-c647-42d5-b608-e7cc9242a54d</guid><dc:creator>rathseg</dc:creator><slash:comments>9</slash:comments><comments>https://community.element14.com/thread/36860?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/36860/uart-drivers-not-working-in-win10-pro-home-64bit/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div&gt; Hi,&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; &amp;nbsp; &amp;nbsp;I just got a Zedboard and I am trying to get it up and running but I am getting stuck right at the very beginning with getting the UART connection to work. &amp;nbsp;I followed the included instructions with the board. &amp;nbsp;I got the Green Power light, blue done light, &amp;quot;digilent&amp;quot; image on the OLED, and a solid amber light on the UART LD11. &amp;nbsp;&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;span&gt; I went to the next step that says you need to install the driver for the Cypress CY7C64225 &amp;nbsp;USB-to-UART. &amp;nbsp;I found the the 1.3 install guide from here: &lt;/span&gt;&lt;a class="jive-link-external-small" href="http://zedboard.org/support/documentation/1521" rel="nofollow noopener" target="_blank"&gt;http://zedboard.org/support/documentation/1521&lt;/a&gt;&lt;span&gt; &amp;nbsp;I went to the Cypress site, got the CypressDriverInstaller_1 file and installed it. &amp;nbsp;It said it installed fine(* there are discrepancies with the install guide after install, which I will get to in a minute ). &amp;nbsp;The amber light turned off instead of blinking. &amp;nbsp;Tried reconnecting the Zedboard, turning on/off, restarting computer. &amp;nbsp;In all cases, the UART amber light is off and I cannot connect with a terminal program.&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; Compared with the install guide there are some things that are different in the device manager. &amp;nbsp;There is no device listed as &amp;quot;CypressUsbConsoleWindowsDriver&amp;quot; as Figure 4/Step 9 shows. &amp;nbsp;Under Ports ( COM and LPT ), &amp;nbsp;it is called USB Serial Port ( COM4 ), not &amp;quot;Cypress Serial&amp;quot;. &amp;nbsp; USB Serial Port is the Zedboard as it only appears if I turn on the Zedboard. &amp;nbsp;Going into the properties for the USB Serial Port under Port Settings-&amp;gt;Advanced as steps 10 and 11 indicate, there is no option for Enable Port Persist, but under &amp;quot;Com Port Number&amp;quot; dropdown box ( bottom of the picture step 11 ), there is an option for &amp;quot;enable RTS-DTR Flow Control&amp;quot; and &amp;quot;Other Serial Device Setup&amp;quot; with the option &amp;quot;Compatible I2C Slave Device Address (7 bit Even Address ) with 0x42 in the textbox. &amp;nbsp;USB to UART Adapter is under &amp;quot;Universal Serial Bus Controllers&amp;quot; but is not mentioned in the install guide.&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;span&gt; I started checking the forums and found this post: &lt;/span&gt;&lt;a class="jive-link-external-small" href="http://zedboard.org/content/uart-driver-does-not-work-new-pc" rel="nofollow noopener" target="_blank"&gt;http://zedboard.org/content/uart-driver-does-not-work-new-pc&lt;/a&gt;&lt;span&gt; and tried ALL the suggestions there with no change. &amp;nbsp;That thread was pretty old so I thought I&amp;#39;d start a new one. &amp;nbsp;If I uninstall everything and turn on the zedboard I can get the solid amber light back.&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; I also tried hooking up the Zedboard to a laptop running Windows 10 Home 64-bit, with the exact same results.&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; OS: Windows 10 Pro 64 bit&lt;/div&gt;&lt;div&gt; USB Serial Port Version number after Cypress driver install: 3.13.0.59 dated 10/13/2105&lt;/div&gt;&lt;div&gt; USB to UART Adapter Version number after Cypress driver install 3.13.0.59 dated 10/13/2015&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; I&amp;#39;m pretty much out of ideas at this point and could use some more suggestions. &amp;nbsp;A few other details.&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;&lt;div&gt; Thanks in advance.&lt;/div&gt;&lt;div&gt; &amp;nbsp;&lt;/div&gt;</description></item><item><title>Setting up PLL for use with FPGA fabric</title><link>https://community.element14.com/thread/55452?ContentTypeID=0</link><pubDate>Mon, 06 Jan 2025 20:58:15 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cfe53d3c-6759-4553-86ba-5b2e85636bf5</guid><dc:creator>hawx2020</dc:creator><slash:comments>3</slash:comments><comments>https://community.element14.com/thread/55452?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55452/setting-up-pll-for-use-with-fpga-fabric/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m having trouble setting up the 33MHz PLL clock so that I am able to access it from the FPGA fabric. I&amp;#39;ve never used a PLL before and I&amp;#39;ve only ever used the FPGA fabric on the zedboard so I&amp;#39;m not quite sure where to start. If anyone has any advice or an example project, that would be greatly appreciated.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;</description></item><item><title>RE: Setting up PLL for use with FPGA fabric</title><link>https://community.element14.com/thread/226134?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2025 21:57:05 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:45b6a237-50ed-4ff0-b8e3-e6d5910df7ea</guid><dc:creator>iksevas</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/226134?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55452/setting-up-pll-for-use-with-fpga-fabric/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;The PicoZed product targets that device. There are reference designs on this page:&lt;/p&gt;
&lt;p&gt;&lt;a id="" href="https://www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/picozed/" target="_blank" data-e14adj="t"&gt;https://www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/picozed/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;More up-to-date BSPs are on a SHAREPOINT site.&amp;nbsp;&lt;a id="" href="https://avnet.me/ZedSupport" rel="noopener noreferrer nofollow" target="_blank" data-e14adj="t"&gt;https://avnet.me/ZedSupport&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Either way, you will see in the Vivado portions that there is typically a 100MHz fabric clock provided from the block design that gets created from the 33MHz reference clock.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Setting up PLL for use with FPGA fabric</title><link>https://community.element14.com/thread/226133?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2025 21:49:33 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:b87cb997-929a-4e9f-b5b3-29a3ddbdcf66</guid><dc:creator>hawx2020</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226133?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55452/setting-up-pll-for-use-with-fpga-fabric/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi, it&amp;#39;s the Zynq-7000 XC7Z020-CLG484-1. I tried following some tutorial that was using the block designs, but I couldn&amp;#39;t get it to work. I was probably doing something wrong though. Do you have an example?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Setting up PLL for use with FPGA fabric</title><link>https://community.element14.com/thread/226132?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2025 21:29:38 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:00d6bc1f-ad9a-4d44-b1a1-74c2f8d453f3</guid><dc:creator>iksevas</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226132?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55452/setting-up-pll-for-use-with-fpga-fabric/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Stupid question but what platform are you targeting? Most of the SOC (Zynq-7000) or MPSoC (Zynq UltraScale) have a 33MHz reference clock into the system - there is a simple GUI in Vivado that will allow you to forward a version of this clock to the FPGA fabric for use. This clock can be synthesized into different frequencies depending on your need. It should be as simple as setting up your block design properly in the tools.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226106?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2025 16:52:18 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb29bfa0-841a-4d4a-a000-8fccf412303a</guid><dc:creator>michaelkellett</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/226106?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;The spi_drive code is suspect because it doesn&amp;#39;t use reset and the state machine may start up in any state.&lt;/p&gt;
&lt;p&gt;Pressing the enable button should kick things off - you shouldn&amp;#39;t need to auto start the driver writing to the codec registers but if those missing resets are spoiling things it won&amp;#39;t work.&lt;/p&gt;
&lt;p&gt;It&amp;#39;s normal when working on FPGA code to simulate before running on actual hardware. It will help you understand what is going on much better if you can get into that habit.&lt;/p&gt;
&lt;p&gt;If you don&amp;#39;t have access to a simulator you should sort that out first - it is a necessary tool.&lt;/p&gt;
&lt;p&gt;You could modify the spi driver to toggle spare output pins as it does certain things so you can see if it is working.&lt;/p&gt;
&lt;p&gt;Or connect a scope to the SPI mosi output to the codec and look for the *** config. signals.&lt;/p&gt;
&lt;p&gt;The data sheet for the ADAU1761explains the timing of all signals very well - you need to study that document carefully.&lt;/p&gt;
&lt;p&gt;MK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/55444?ContentTypeID=0</link><pubDate>Sat, 04 Jan 2025 02:26:03 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:11a9a004-1d01-497b-8a62-ae3d0d838a1c</guid><dc:creator>Former Member</dc:creator><slash:comments>7</slash:comments><comments>https://community.element14.com/thread/55444?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi!&lt;/p&gt;
&lt;p&gt;I&amp;#39;m new to FPGA and ZedBoard, and for educational purpose, I&amp;#39;m trying to recive signal from microphone(or LINE_IN) and passthrough it to headphones(or LINE_OUT). Eventually I&amp;#39;m going to create a sound recognition system(frequency detection to be precisie), but for now, I want to properly set up audio codec, and check on headphones if I can hear myself. I found interesting project here:&amp;nbsp;&lt;a id="" href="https://www.rtlaudiolab.com/page/4/" rel="noopener noreferrer nofollow" target="_blank" data-e14adj="t"&gt;https://www.rtlaudiolab.com/page/4/&lt;/a&gt;&amp;nbsp;(part1-5) that describes how to passtrough audio using SPI communication. I set up everything, just like on this website, but have a problem with SPI driver(which is the codec audio if I understand that correctly), because the&amp;nbsp;&lt;em&gt;data_in&lt;/em&gt; are going nowhere. I don&amp;#39;t know if that&amp;#39;s how it supossed to be, but common sense tell me that it shouldn&amp;#39;t&amp;nbsp; be that way. Also, I can generate a bitstream and program zedboard, but i can&amp;#39;t hear nothing.&lt;/p&gt;
&lt;p&gt;I would be thankful for any advice and help.&lt;/p&gt;
&lt;p&gt;PS. Acording to website of the project, i should press BTNC before i could hear anything but that doesn;t help either.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here are screenshots from the vivado:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/screen2.png" alt=" " /&gt;&lt;img style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/screen1.png" alt=" " /&gt;&lt;/p&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226103?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2025 16:09:16 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:ca4695b9-804e-46ee-866d-7a39294b201e</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226103?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hey, thanks for your effort. I really appreciate that. I found that earlier, and even assign it for another button, but it doesnt help either. I wanted to simply check the audio codec, if it&amp;#39;s working properly. I won&amp;#39;t be sending any signal to audio output further in the project. What I need is having digitilized signal on known &amp;quot;port&amp;quot;, to further analisys. But for now, I have struggle with audio codec :(&lt;/p&gt;
&lt;p&gt;I have a question about that master module, especially abaout that part that you mentioned, and the few lines under that. If I&amp;#39;m correct, I could simply start the procedure of configurating codec after reset? With that, I would have one button to reset and start sending messages.&lt;/p&gt;
&lt;p&gt;Also, if you could explain in your own words what exactly is bit clock and LR clock, and about that internal synchronisation. I will be very grateful.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226098?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2025 15:37:25 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:4ac7089d-ab40-4e26-9452-cdee25534599</guid><dc:creator>michaelkellett</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226098?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I can&amp;#39;t review the code in your link because its written in Verilog which I can understand but never use if I can help it. So I am not confident in spotting bugs in Verilog code.&lt;/p&gt;
&lt;p&gt;Having said that, there&lt;strong&gt; is&lt;/strong&gt; a bug in the spi_controller block diagram which casts huge doubt on the utility of the whole rtaudio project as a learning aid.&lt;/p&gt;
&lt;p&gt;i_reset input to the spi_master block is grounded, if you look at the code for the spi_master block you will see that all this should happen when reset is asserted:&lt;/p&gt;
&lt;pre class="shiki light-plus" style="background-color:#ffffff;"&gt;&lt;code&gt;&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;        &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt; (i_reset) &lt;/span&gt;&lt;span style="color:#af00db;"&gt;begin&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            fsm_state &amp;lt;= IDLE;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            spi_data_counter &amp;lt;= \&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            spi_cs_n &amp;lt;= &lt;/span&gt;&lt;span style="color:#098658;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;\&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b1&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            data_out_shift &amp;lt;= \&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            done &amp;lt;= &lt;/span&gt;&lt;span style="color:#098658;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;\&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            spi_mosi &amp;lt;= &lt;/span&gt;&lt;span style="color:#098658;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;\&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            data_out_shift &amp;lt;= \&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            o_data_out &amp;lt;= \&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;            o_busy &amp;lt;= \&lt;/span&gt;&lt;span style="color:#098658;"&gt;&amp;#39;b0&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class="line"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It is possible that the complete project will work, or often work depending on the way the registers start up, but not certain. To fail to initialise a standard block like the SPI in this way, is&amp;nbsp; what I would call an unforgivable error. It is a deliberate action (not an error of omission) which will result in an uncertain design. To do this in a published teaching style project is beyond sloppy ! Do NOT trust this project .&lt;/p&gt;
&lt;p&gt;Moving on ........&lt;/p&gt;
&lt;p&gt;The SPI_MASTER is a standard block of code (the audiolab article says:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;quot;The SPI Master is a generic module that implements the master device in a single-slave SPI bus. In addition to the standard SPI signals, the clock phase and polarity of the SPI Master can be changed at runtime using the corresponding input ports. The bit width of a transaction can be adjusted during the module instantiation.&amp;quot; )&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Using standard blocks of code is common but, as in this case, frequently results in features in the code that are not required for your specific application. SPI is&amp;nbsp; a bidirectional protocol, but you only need on direction so some unwanted connections are to be expected. You have a miso pin but you don&amp;#39;t need it.&lt;/p&gt;
&lt;p&gt;In section 5 of the rtaudio project they have a block diagram of the audio pass through:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/pastedimage1736090911330v1.png"  /&gt;&lt;/p&gt;
&lt;p&gt;This is a bit of it and you can see that they connect the codec_adc_data output directly to the codec dac_data input. This is a trivial and pointless audio pass through application in which the data is never read properly into the FPGA and the bit clock and LR clock rely on internal synchronisation in the codec chip. It will tell you if the codec is working but not that you can actually read and write digitised data from/to it.&lt;/p&gt;
&lt;p&gt;The do cover this later:&lt;/p&gt;
&lt;p&gt;&lt;img loading="lazy" alt="image" style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/pastedimage1736091264584v2.png"  /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I have not checked their code at all !&lt;/p&gt;
&lt;p&gt;(If you have considered using VHDL then let me know - I could then provide some code examples (but not for your hardware, although obviously modifiable.)&lt;/p&gt;
&lt;p&gt;MK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226092?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2025 12:34:49 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:4146536c-b37a-483d-9e55-e6d90098e595</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226092?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hey, I read the documentation of the audio codec, and i get it that to set up the SPI communication i have to pull ~CLATCH 3 times low, and it is written in spi_driver. I also understand that those other &amp;quot;messages&amp;quot; have to be sent, to properly work, but in that implementation, i dont understand what is going on in spi_master, especially that half of the code includes clock_phase and&amp;nbsp; clock_polarity that are grounded.&amp;nbsp; If you or anyone could look at the example here:&amp;nbsp;&lt;a id="" href="https://www.rtlaudiolab.com/004-zedboard-audio-codec-spi-controller/" rel="noopener noreferrer nofollow" target="_blank" data-e14adj="t"&gt;https://www.rtlaudiolab.com/004-zedboard-audio-codec-spi-controller/&lt;/a&gt;&amp;nbsp;and tell me if thats correct i would be thankful.&lt;/p&gt;
&lt;p&gt;Also, i dont understand why i_spi_miso get involved here, cause the whole spi_controller has only sending the configuration to o_spi_mosi, so why we have the reading option here. Below i&amp;#39;m putting screenshot of whole spi_controller for the record.&lt;/p&gt;
&lt;p&gt;About that clock that you mentioned, the i_codec_lr_clock and bit_clock are nowhere used. The clock generator are &amp;quot;creating&amp;quot; 45MHz clock that is send to mclock, in that project was said that if I want to sampling in 44.1kHz, the mclock should be 1024xfs, in documentation i found it too(in the case of not using internal PLL).&lt;/p&gt;
&lt;p&gt;About the example, unfortunately I didn&amp;#39;t found another example of setting audio codec with SPI using only PL. It&amp;#39;s not that I can&amp;#39;t use it, just prefer to use PL if thats possible.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" style="max-height:360px;max-width:640px;" src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/319/pastedimage1736080477209v1.png"  /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226091?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2025 10:29:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:6cd319a3-aaf7-47b1-aefe-a4ae77640829</guid><dc:creator>michaelkellett</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226091?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I&amp;#39;m seriously puzzled by your diagram.&lt;/p&gt;
&lt;p&gt;The SPI controller does not appear to have any reset or parallel data input/output - how does it know what config data to send out, when to send it etc etc.&lt;/p&gt;
&lt;p&gt;If you want to accept analogue input data on the ADC input to the codec and output analogue data on its audio output DAC you will need to initialise the codec, then the FPGA can accept serial digital data from the codec ADC and buffer it , read from the buffer and output serial digital data to the codec which will use its DAC to convert it to analogue audio data.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not sure that you have got the hang of how to clock the codec and the FPGA, the LR clock from the codec will be synchronous with the M clock into the codec. It is unlikely that you will run the FPGA synchronously with the LR clock and you may well have a choice between clocking data out of the codec synchronously with M clock of FPGA clock. There will be timing constraints in the codec spec about clocking and the MUST be observed if you want it to work correctly.&lt;/p&gt;
&lt;p&gt;I suggest that you find a complete working example of a pass through application for your hardware and study it carefully. Then try tweaking it a bit. I took a quick look at the example you linked and although I didn&amp;#39;t like its use of video rather than static diagrams it probably covers a lot of what you need. Have you been able to make it work ?&lt;/p&gt;
&lt;p&gt;MK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226086?ContentTypeID=1</link><pubDate>Sat, 04 Jan 2025 15:23:48 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:a4ca9883-2573-4277-876d-cf5bb76cf9ef</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226086?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Yeah, I should&amp;#39;ve said that earlier. The audio codec on zedboard is ADAU1761. The I2C is default, and for set up SPI, in spi_driver_inst there are 3 dummies write sends to spi_master. Also in documentation of that codec was said so. As i told before, I&amp;#39;m new to FPGA, and i dont understand everything that has been written in that intances, and I&amp;#39;m not sure why there&amp;#39;s need to configure SPI eventually, because I only need the audio output to use further in PL. Could you help me understand that? My job for now is to short the LINE_IN and LINE_OUT to make sure that board is working properly.&lt;/p&gt;
&lt;p&gt;Also, in audio_proccessor_inst there are simple assign o_codec_dac_data to i_codec adc_data. Is that could work, or something is missing?. Of course the name of that pins are from constraints file dedicated to this zedboard.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: audio passthrough using SPI in PL</title><link>https://community.element14.com/thread/226085?ContentTypeID=1</link><pubDate>Sat, 04 Jan 2025 14:52:28 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:8fc57b1e-e7a3-4027-8c7d-75b7f112a74e</guid><dc:creator>jc2048</dc:creator><slash:comments>1</slash:comments><comments>https://community.element14.com/thread/226085?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55444/audio-passthrough-using-spi-in-pl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Qualification: I don&amp;#39;t use Vivado and don&amp;#39;t own a Zedboard, so this is just in very general terms.&lt;/p&gt;
&lt;p&gt;The audio data streams in to the FPGA on the i_codec_(xxx) inputs.&lt;/p&gt;
&lt;p&gt;Given the names, it&amp;#39;s most likely the CODEC chip has an I2S output. Serial data on adc_data, clock on bit_clock, and the left-right qualifier on lr_clock.&lt;/p&gt;
&lt;p&gt;It&amp;#39;s possible that the CODEC being used here has a register set that needs to be loaded via SPI at the start (sometimes they&amp;#39;re I2C, sometimes SPI, and sometimes there&amp;#39;s no setup and it&amp;#39;s just done by strapping inputs on the CODEC chip). Normally that would be done from a processor, but can also be done from logic (it&amp;#39;s usually quite a small selection of options, so not too onerous). Try going down a level into the spi_controller_inst and see if there&amp;#39;s not only a shift register for the SPI, but also a simple state machine to sequence everything and a store of the values that will be sent in sequence to the CODEC.&lt;/p&gt;
&lt;p&gt;If that&amp;#39;s the case, the i_spi_miso input would come from the CODEC, for reading back register contents, but may not actually be necessary to get the CODEC set up (there&amp;#39;s a good chance it could work just by pushing the right data at it).&lt;/p&gt;
&lt;p&gt;Hopefully that will get you a bit further.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zedboard troubleshooting : Power LED and DONE LED does not turn ON</title><link>https://community.element14.com/thread/224895?ContentTypeID=1</link><pubDate>Mon, 28 Oct 2024 14:37:17 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:0ddd89e6-3bf7-4415-8f8f-cc8e73bca4e6</guid><dc:creator>bidrohini</dc:creator><slash:comments>0</slash:comments><comments>https://community.element14.com/thread/224895?ContentTypeID=1</comments><wfw:commentRss>https://community.element14.com/products/devtools/avnetboardscommunity/avnetboard-forums/f/zedboard-hardware-design/55227/zedboard-troubleshooting-power-led-and-done-led-does-not-turn-on/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Recheck the PGOOD (Power Good) signals associated with different voltage rails. If the PGOOD signals aren&amp;rsquo;t asserted correctly, the board&amp;nbsp;may not proceed with its boot sequence.&amp;nbsp;This is why the DONE LED is not illuminating.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>