<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wikis.ece.iastate.edu/cpre584/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tyler07</id>
	<title>Cpre584 - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wikis.ece.iastate.edu/cpre584/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tyler07"/>
	<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Special:Contributions/Tyler07"/>
	<updated>2026-08-12T19:03:23Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=905</id>
		<title>Using ISE&#039;s Core Generator to build FIFOs and other IP cores</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=905"/>
		<updated>2013-02-26T23:59:49Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Simulating IP Cores With Modelsim (For a Custom Testbench) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Why Use Dedicated Logic ==&lt;br /&gt;
If you don&#039;t use it, you lose it!  Don&#039;t let the dedicated logic (BRAMs, DSP slices) go unused... you&#039;ll hurt their feelings.&lt;br /&gt;
&lt;br /&gt;
Dedicated logic improves compile times and reduces the amount of Slice Logic used.  It&#039;s also FAST, and can help reduce the chance of timing errors.  For example, the DSP slices can operate at 550 MHz.&lt;br /&gt;
&lt;br /&gt;
== How-to ==&lt;br /&gt;
# Open Xilinx&#039;s ISE from the terminal (make sure your [[Convey environment setup | environmental variables]] are set):&lt;br /&gt;
 ise &amp;amp;&lt;br /&gt;
# Create or open a project.  The devices on the HC-1 and HC-2 are Virtex 5 FPGAs (xc5vlx330, -2, ff1760).&lt;br /&gt;
# Open the Core Generator (Tools -&amp;gt; Core Generator...)&lt;br /&gt;
# Create a new Core Generator project.&lt;br /&gt;
## Part&lt;br /&gt;
### Family: Virtex5&lt;br /&gt;
### Device: xc5vlx330&lt;br /&gt;
### Package: ff1760&lt;br /&gt;
### Speed: -2&lt;br /&gt;
## Generation&lt;br /&gt;
### Simulation Model: Structural&lt;br /&gt;
# Generate you IP Cores!&lt;br /&gt;
# Create folder named &amp;quot;coregen&amp;quot; in your PDK proejct&lt;br /&gt;
# Copy the .ngc, .v, and .xco to the coregen folder in your PDK project&lt;br /&gt;
&lt;br /&gt;
== Common IP Cores ==&lt;br /&gt;
Most IP cores can be implemented using either BRAM (Block RAM), DSP cores, or Slice logic.  To give you an idea about the number of components available, there are:&lt;br /&gt;
* 288 36-Kilobit BRAMs available&lt;br /&gt;
** BRAMs are dual port, allowing multiple small FIFOs per BRAM&lt;br /&gt;
* 28x15 DSP slices&lt;br /&gt;
* 51,840 Slices (each slice contains 4 LUTS &amp;amp; 4 Flip-flops)&lt;br /&gt;
&lt;br /&gt;
Here are some common components you could use:&lt;br /&gt;
* Memories &amp;amp; Storage Elements -&amp;gt; (use Block RAM)&lt;br /&gt;
** FIFOs (any port width)&lt;br /&gt;
** Dual port RAM (port widths: 2, 4, 8... up to 128 bits)&lt;br /&gt;
* Math Functions -&amp;gt; (use DSP slices)&lt;br /&gt;
** Adder/Subtracts (up to 48 bit)&lt;br /&gt;
** Multipliers (up to 64 bit, 128 bit output)&lt;br /&gt;
** Dividers (up to 32 bit)&lt;br /&gt;
&lt;br /&gt;
==Simulating IP Cores With Modelsim (For a Custom Testbench)==&lt;br /&gt;
So you have just used coregen to make your IP core and you would like to use it in your testbench. The steps below will show you how you can successfully simulate the IP core.&lt;br /&gt;
*Add the .v or .vhd files to your Modelsim project so that when they are compilied they show up in your work&lt;br /&gt;
*At the top of the module that you will be using to instantiate the new IP core, add the following:&lt;br /&gt;
**Library UNISIM;&lt;br /&gt;
**USE UNISIM.VCOMPONENTS.ALL;&lt;br /&gt;
*Now in the Modelsim console run the following command:&lt;br /&gt;
**vmap &amp;lt;library&amp;gt; &amp;lt;path to library&amp;gt;&lt;br /&gt;
**For our purposes this will be:&lt;br /&gt;
***VHDL - vmap unisim  /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/unisim/ &lt;br /&gt;
***Verilog - vmap unisim  /remote/Xilinx/13.4/ISE/verilog/mti_se/10.1c/lin64/unisim/&lt;br /&gt;
*If your corgen module depends on the xilinxcorelib you will also want to map this library&lt;br /&gt;
**vmap xilinxcorelib /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/xilinxcorelib&lt;br /&gt;
(These paths are subject to change, they were added on 2/14/13)&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=904</id>
		<title>Using ISE&#039;s Core Generator to build FIFOs and other IP cores</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=904"/>
		<updated>2013-02-26T23:59:24Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Simulating IP Cores With Modelsim (For a Custom Testbench) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Why Use Dedicated Logic ==&lt;br /&gt;
If you don&#039;t use it, you lose it!  Don&#039;t let the dedicated logic (BRAMs, DSP slices) go unused... you&#039;ll hurt their feelings.&lt;br /&gt;
&lt;br /&gt;
Dedicated logic improves compile times and reduces the amount of Slice Logic used.  It&#039;s also FAST, and can help reduce the chance of timing errors.  For example, the DSP slices can operate at 550 MHz.&lt;br /&gt;
&lt;br /&gt;
== How-to ==&lt;br /&gt;
# Open Xilinx&#039;s ISE from the terminal (make sure your [[Convey environment setup | environmental variables]] are set):&lt;br /&gt;
 ise &amp;amp;&lt;br /&gt;
# Create or open a project.  The devices on the HC-1 and HC-2 are Virtex 5 FPGAs (xc5vlx330, -2, ff1760).&lt;br /&gt;
# Open the Core Generator (Tools -&amp;gt; Core Generator...)&lt;br /&gt;
# Create a new Core Generator project.&lt;br /&gt;
## Part&lt;br /&gt;
### Family: Virtex5&lt;br /&gt;
### Device: xc5vlx330&lt;br /&gt;
### Package: ff1760&lt;br /&gt;
### Speed: -2&lt;br /&gt;
## Generation&lt;br /&gt;
### Simulation Model: Structural&lt;br /&gt;
# Generate you IP Cores!&lt;br /&gt;
# Create folder named &amp;quot;coregen&amp;quot; in your PDK proejct&lt;br /&gt;
# Copy the .ngc, .v, and .xco to the coregen folder in your PDK project&lt;br /&gt;
&lt;br /&gt;
== Common IP Cores ==&lt;br /&gt;
Most IP cores can be implemented using either BRAM (Block RAM), DSP cores, or Slice logic.  To give you an idea about the number of components available, there are:&lt;br /&gt;
* 288 36-Kilobit BRAMs available&lt;br /&gt;
** BRAMs are dual port, allowing multiple small FIFOs per BRAM&lt;br /&gt;
* 28x15 DSP slices&lt;br /&gt;
* 51,840 Slices (each slice contains 4 LUTS &amp;amp; 4 Flip-flops)&lt;br /&gt;
&lt;br /&gt;
Here are some common components you could use:&lt;br /&gt;
* Memories &amp;amp; Storage Elements -&amp;gt; (use Block RAM)&lt;br /&gt;
** FIFOs (any port width)&lt;br /&gt;
** Dual port RAM (port widths: 2, 4, 8... up to 128 bits)&lt;br /&gt;
* Math Functions -&amp;gt; (use DSP slices)&lt;br /&gt;
** Adder/Subtracts (up to 48 bit)&lt;br /&gt;
** Multipliers (up to 64 bit, 128 bit output)&lt;br /&gt;
** Dividers (up to 32 bit)&lt;br /&gt;
&lt;br /&gt;
==Simulating IP Cores With Modelsim (For a Custom Testbench)==&lt;br /&gt;
So you have just used coregen to make your IP core and you would like to use it in your testbench. The steps below will show you how you can successfully simulate the IP core.&lt;br /&gt;
*Add the .v or .vhd files to your Modelsim project so that when they are compilied they show up in your work&lt;br /&gt;
*At the top of the module that you will be using to instantiate the new IP core, add the following:&lt;br /&gt;
**Library UNISIM;&lt;br /&gt;
**USE UNISIM.VCOMPONENTS.ALL;&lt;br /&gt;
*Now in the Modelsim console run the following command:&lt;br /&gt;
**vmap &amp;lt;library&amp;gt; &amp;lt;path to library&amp;gt;&lt;br /&gt;
**For our purposes this will be:&lt;br /&gt;
***VHDL - vmap unisim  /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/unisim/ &lt;br /&gt;
***Verilog - vmap unisim  /remote/Xilinx/13.4/ISE/verilog/mti_se/10.1c/lin64/unisim/&lt;br /&gt;
*If your corgen module depends on the xilinxcorelib you will also want to make this library&lt;br /&gt;
**vmap xilinxcorelib /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/xilinxcorelib&lt;br /&gt;
(These paths are subject to change, they were added on 2/14/13)&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=888</id>
		<title>Using ISE&#039;s Core Generator to build FIFOs and other IP cores</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=888"/>
		<updated>2013-02-17T22:57:16Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Simulating IP Cores With Modelsim (For a Custom Testbench) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Why Use Dedicated Logic ==&lt;br /&gt;
If you don&#039;t use it, you lose it!  Don&#039;t let the dedicated logic (BRAMs, DSP slices) go unused... you&#039;ll hurt their feelings.&lt;br /&gt;
&lt;br /&gt;
Dedicated logic improves compile times and reduces the amount of Slice Logic used.  It&#039;s also FAST, and can help reduce the chance of timing errors.  For example, the DSP slices can operate at 550 MHz.&lt;br /&gt;
&lt;br /&gt;
== How-to ==&lt;br /&gt;
# Open Xilinx&#039;s ISE from the terminal (make sure your [[Convey environment setup | environmental variables]] are set):&lt;br /&gt;
 ise &amp;amp;&lt;br /&gt;
# Create or open a project.  The devices on the HC-1 and HC-2 are Virtex 5 FPGAs (xc5vlx330, -2, ff1760).&lt;br /&gt;
# Open the Core Generator (Tools -&amp;gt; Core Generator...)&lt;br /&gt;
# Create a new Core Generator project.&lt;br /&gt;
## Part&lt;br /&gt;
### Family: Virtex5&lt;br /&gt;
### Device: xc5vlx330&lt;br /&gt;
### Package: ff1760&lt;br /&gt;
### Speed: -2&lt;br /&gt;
## Generation&lt;br /&gt;
### Simulation Model: Structural&lt;br /&gt;
# Generate you IP Cores!&lt;br /&gt;
# Create folder named &amp;quot;coregen&amp;quot; in your PDK proejct&lt;br /&gt;
# Copy the .ngc, .v, and .xco to the coregen folder in your PDK project&lt;br /&gt;
&lt;br /&gt;
== Common IP Cores ==&lt;br /&gt;
Most IP cores can be implemented using either BRAM (Block RAM), DSP cores, or Slice logic.  To give you an idea about the number of components available, there are:&lt;br /&gt;
* 288 36-Kilobit BRAMs available&lt;br /&gt;
** BRAMs are dual port, allowing multiple small FIFOs per BRAM&lt;br /&gt;
* 28x15 DSP slices&lt;br /&gt;
* 51,840 Slices (each slice contains 4 LUTS &amp;amp; 4 Flip-flops)&lt;br /&gt;
&lt;br /&gt;
Here are some common components you could use:&lt;br /&gt;
* Memories &amp;amp; Storage Elements -&amp;gt; (use Block RAM)&lt;br /&gt;
** FIFOs (any port width)&lt;br /&gt;
** Dual port RAM (port widths: 2, 4, 8... up to 128 bits)&lt;br /&gt;
* Math Functions -&amp;gt; (use DSP slices)&lt;br /&gt;
** Adder/Subtracts (up to 48 bit)&lt;br /&gt;
** Multipliers (up to 64 bit, 128 bit output)&lt;br /&gt;
** Dividers (up to 32 bit)&lt;br /&gt;
&lt;br /&gt;
==Simulating IP Cores With Modelsim (For a Custom Testbench)==&lt;br /&gt;
So you have just used coregen to make your IP core and you would like to use it in your testbench. The steps below will show you how you can successfully simulate the IP core.&lt;br /&gt;
*Add the .v or .vhd files to your Modelsim project so that when they are compilied they show up in your work&lt;br /&gt;
*At the top of the module that you will be using to instantiate the new IP core, add the following:&lt;br /&gt;
**Library UNISIM;&lt;br /&gt;
**USE UNISIM.VCOMPONENTS.ALL;&lt;br /&gt;
*Now in the Modelsim console run the following command:&lt;br /&gt;
**vmap &amp;lt;library&amp;gt; &amp;lt;path to library&amp;gt;&lt;br /&gt;
**For our purposes this will be:&lt;br /&gt;
***VHDL - vmap unisim  /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/unisim/ &lt;br /&gt;
***Verilog - vmap unisim  /remote/Xilinx/13.4/ISE/verilog/mti_se/10.1c/lin64/unisim/&lt;br /&gt;
(These paths are subject to change, they were added on 2/14/13)&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=887</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=887"/>
		<updated>2013-02-15T04:40:54Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Tyler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
*Week 3 - [[Media:Cyc05_week3_presentation.pdf‎ | Presentation Slides Week 3]]&lt;br /&gt;
*Week 4 - [[Media:Cyc05_week4_presentation.pdf‎ | Presentation Slides Week 4]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
=== Tyler ===&lt;br /&gt;
*Week 1&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
*Week2&lt;br /&gt;
** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Week3&lt;br /&gt;
**[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
**Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
**Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
**Modified [[Tutorial: Creating a Custom Bitfile]], some details were unclear and/or left out about using your newly built bitfile&lt;br /&gt;
*Week 4&lt;br /&gt;
**Added a topic to the FAQ page regarding how you can use the /tmp/ directory in order to speed up certain activities such as building a bitfile or simulation. Added [[Media:UseTmpScript.sh‎ | this script]] to help with migration.&lt;br /&gt;
*Week 5&lt;br /&gt;
**Added instructions for simulating an IP core made with ISE corgen. This is mostly for when you would like to use your own testbench, I believe Coney&#039;s testbench will work without these steps&lt;br /&gt;
***[[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
&lt;br /&gt;
=== Osama ===&lt;br /&gt;
*Week 1: Creating Team Cyc05 page.&lt;br /&gt;
*Week 2:&lt;br /&gt;
**Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy&lt;br /&gt;
**Adding [[Frequently Asked Questions]] page&lt;br /&gt;
* Week 3:&lt;br /&gt;
**Updating the [[Frequently Asked Questions]] page&lt;br /&gt;
**Adding and maintaining the [[Using the Memory Controller Interface]] page&lt;br /&gt;
* Week 4:&lt;br /&gt;
**[[Media:Vhd2v isnt.txt|Python script to generate instantiation code of VHDL module in Verilog]]&lt;br /&gt;
**[[Media:Convey_mc_ports.txt|Python script to generate the MC interface signals in VHDL]]&lt;br /&gt;
**[[Media:convey_mc_ports_vhdl.txt|MC interface signals]] in VHDL&lt;br /&gt;
**Adding more stuff to the [[Frequently Asked Questions]] page&lt;br /&gt;
&lt;br /&gt;
=== PengQing ===&lt;br /&gt;
*Week 1:&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*Week 2:&lt;br /&gt;
**[http://vol.verilog.com/VOL/main.htm Verilog self-study online course]&lt;br /&gt;
*Week 3:&lt;br /&gt;
**[http://www.ece.msstate.edu/~reese/EE4743/lectures/verilog_intro_2002/verilog_intro_2002.pdf Verilog vs. VHDL]&lt;br /&gt;
*Week 4:&lt;br /&gt;
**[http://www.vogella.com/articles/Git/article.html git tutorial]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=886</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=886"/>
		<updated>2013-02-15T04:40:25Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Tyler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
*Week 3 - [[Media:Cyc05_week3_presentation.pdf‎ | Presentation Slides Week 3]]&lt;br /&gt;
*Week 4 - [[Media:Cyc05_week4_presentation.pdf‎ | Presentation Slides Week 4]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
=== Tyler ===&lt;br /&gt;
*Week 1&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
*Week2&lt;br /&gt;
** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Week3&lt;br /&gt;
**[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
**Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
**Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
**Modified [[Tutorial: Creating a Custom Bitfile]], some details were unclear and/or left out about using your newly built bitfile&lt;br /&gt;
*Week 4&lt;br /&gt;
**Added a topic to the FAQ page regarding how you can use the /tmp/ directory in order to speed up certain activities such as building a bitfile or simulation. Added [[Media:UseTmpScript.sh‎ | this script]] to help with migration.&lt;br /&gt;
*Week 5&lt;br /&gt;
**Added instructions for simulating an IP core made with ISE corgen. This is mostly for when you would like to use your own testbench, I believe Coney&#039;s testbench will work without these steps&lt;br /&gt;
***[[]]&lt;br /&gt;
&lt;br /&gt;
=== Osama ===&lt;br /&gt;
*Week 1: Creating Team Cyc05 page.&lt;br /&gt;
*Week 2:&lt;br /&gt;
**Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy&lt;br /&gt;
**Adding [[Frequently Asked Questions]] page&lt;br /&gt;
* Week 3:&lt;br /&gt;
**Updating the [[Frequently Asked Questions]] page&lt;br /&gt;
**Adding and maintaining the [[Using the Memory Controller Interface]] page&lt;br /&gt;
* Week 4:&lt;br /&gt;
**[[Media:Vhd2v isnt.txt|Python script to generate instantiation code of VHDL module in Verilog]]&lt;br /&gt;
**[[Media:Convey_mc_ports.txt|Python script to generate the MC interface signals in VHDL]]&lt;br /&gt;
**[[Media:convey_mc_ports_vhdl.txt|MC interface signals]] in VHDL&lt;br /&gt;
**Adding more stuff to the [[Frequently Asked Questions]] page&lt;br /&gt;
&lt;br /&gt;
=== PengQing ===&lt;br /&gt;
*Week 1:&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*Week 2:&lt;br /&gt;
**[http://vol.verilog.com/VOL/main.htm Verilog self-study online course]&lt;br /&gt;
*Week 3:&lt;br /&gt;
**[http://www.ece.msstate.edu/~reese/EE4743/lectures/verilog_intro_2002/verilog_intro_2002.pdf Verilog vs. VHDL]&lt;br /&gt;
*Week 4:&lt;br /&gt;
**[http://www.vogella.com/articles/Git/article.html git tutorial]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=885</id>
		<title>Using ISE&#039;s Core Generator to build FIFOs and other IP cores</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Using_ISE%27s_Core_Generator_to_build_FIFOs_and_other_IP_cores&amp;diff=885"/>
		<updated>2013-02-15T04:38:20Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Why Use Dedicated Logic ==&lt;br /&gt;
If you don&#039;t use it, you lose it!  Don&#039;t let the dedicated logic (BRAMs, DSP slices) go unused... you&#039;ll hurt their feelings.&lt;br /&gt;
&lt;br /&gt;
Dedicated logic improves compile times and reduces the amount of Slice Logic used.  It&#039;s also FAST, and can help reduce the chance of timing errors.  For example, the DSP slices can operate at 550 MHz.&lt;br /&gt;
&lt;br /&gt;
== How-to ==&lt;br /&gt;
# Open Xilinx&#039;s ISE from the terminal (make sure your [[Convey environment setup | environmental variables]] are set):&lt;br /&gt;
 ise &amp;amp;&lt;br /&gt;
# Create or open a project.  The devices on the HC-1 and HC-2 are Virtex 5 FPGAs (xc5vlx330, -2, ff1760).&lt;br /&gt;
# Open the Core Generator (Tools -&amp;gt; Core Generator...)&lt;br /&gt;
# Create a new Core Generator project.&lt;br /&gt;
## Part&lt;br /&gt;
### Family: Virtex5&lt;br /&gt;
### Device: xc5vlx330&lt;br /&gt;
### Package: ff1760&lt;br /&gt;
### Speed: -2&lt;br /&gt;
## Generation&lt;br /&gt;
### Simulation Model: Structural&lt;br /&gt;
# Generate you IP Cores!&lt;br /&gt;
# Create folder named &amp;quot;coregen&amp;quot; in your PDK proejct&lt;br /&gt;
# Copy the .ngc, .v, and .xco to the coregen folder in your PDK project&lt;br /&gt;
&lt;br /&gt;
== Common IP Cores ==&lt;br /&gt;
Most IP cores can be implemented using either BRAM (Block RAM), DSP cores, or Slice logic.  To give you an idea about the number of components available, there are:&lt;br /&gt;
* 288 36-Kilobit BRAMs available&lt;br /&gt;
** BRAMs are dual port, allowing multiple small FIFOs per BRAM&lt;br /&gt;
* 28x15 DSP slices&lt;br /&gt;
* 51,840 Slices (each slice contains 4 LUTS &amp;amp; 4 Flip-flops)&lt;br /&gt;
&lt;br /&gt;
Here are some common components you could use:&lt;br /&gt;
* Memories &amp;amp; Storage Elements -&amp;gt; (use Block RAM)&lt;br /&gt;
** FIFOs (any port width)&lt;br /&gt;
** Dual port RAM (port widths: 2, 4, 8... up to 128 bits)&lt;br /&gt;
* Math Functions -&amp;gt; (use DSP slices)&lt;br /&gt;
** Adder/Subtracts (up to 48 bit)&lt;br /&gt;
** Multipliers (up to 64 bit, 128 bit output)&lt;br /&gt;
** Dividers (up to 32 bit)&lt;br /&gt;
&lt;br /&gt;
==Simulating IP Cores With Modelsim (For a Custom Testbench)==&lt;br /&gt;
So you have just used coregen to make your IP core and you would like to use it in your testbench. The steps below will show you how you can successfully simulate the IP core.&lt;br /&gt;
*Add the .v or .vhd files to your Modelsim project so that when they are compilied they show up in your work&lt;br /&gt;
*At the top of the module that you will be using to instantiate the new IP core, add the following:&lt;br /&gt;
**Library UNISIM;&lt;br /&gt;
**USE UNISIM.VCOMPONENTS.ALL;&lt;br /&gt;
*Now in the Modelsim console run the following command:&lt;br /&gt;
**vmap &amp;lt;library&amp;gt; &amp;lt;path to library&amp;gt;&lt;br /&gt;
**For our purposes this will be:&lt;br /&gt;
***vmap unisim  /remote/Xilinx/13.4/ISE/vhdl/mti_se/10.1c/lin64/unisim/ (This path is subject to change, it was added on 2/14/13)&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=874</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=874"/>
		<updated>2013-02-12T23:05:38Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Tyler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
*Week 3 - [[Media:Cyc05_week3_presentation.pdf‎ | Presentation Slides Week 3]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
=== Tyler ===&lt;br /&gt;
*Week 1&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
*Week2&lt;br /&gt;
** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Week3&lt;br /&gt;
**[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
**Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
**Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
**Modified [[Tutorial: Creating a Custom Bitfile]], some details were unclear and/or left out about using your newly built bitfile&lt;br /&gt;
*Week 4&lt;br /&gt;
**Added a topic to the FAQ page regarding how you can use the /tmp/ directory in order to speed up certain activities such as building a bitfile or simulation. Added [[Media:UseTmpScript.sh‎ | this script]] to help with migration.&lt;br /&gt;
&lt;br /&gt;
=== Osama ===&lt;br /&gt;
*Week 1: Creating Team Cyc05 page.&lt;br /&gt;
*Week 2:&lt;br /&gt;
**Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy&lt;br /&gt;
**Adding [[Frequently Asked Questions]] page&lt;br /&gt;
* Week 3:&lt;br /&gt;
**Updating the [[Frequently Asked Questions]] page&lt;br /&gt;
**Adding and maintaining the [[Using the Memory Controller Interface]] page&lt;br /&gt;
* Week 4:&lt;br /&gt;
**[[Media:Vhd2v isnt.txt|Python script to generate instantiation code of VHDL module in Verilog]]&lt;br /&gt;
**[[Media:Convey_mc_ports.txt|Python script to generate the MC interface signals in VHDL]]&lt;br /&gt;
**[[Media:convey_mc_ports_vhdl.txt|MC interface signals]] in VHDL&lt;br /&gt;
**Adding more stuff to the [[Frequently Asked Questions]] page&lt;br /&gt;
&lt;br /&gt;
=== PengQing ===&lt;br /&gt;
*Week 1:&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*Week 2:&lt;br /&gt;
**[http://vol.verilog.com/VOL/main.htm Verilog self-study online course]&lt;br /&gt;
*Week 3:&lt;br /&gt;
**[http://www.ece.msstate.edu/~reese/EE4743/lectures/verilog_intro_2002/verilog_intro_2002.pdf Verilog vs. VHDL]&lt;br /&gt;
*Week 4:&lt;br /&gt;
**[http://www.vogella.com/articles/Git/article.html git tutorial]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Frequently_Asked_Questions&amp;diff=873</id>
		<title>Frequently Asked Questions</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Frequently_Asked_Questions&amp;diff=873"/>
		<updated>2013-02-12T23:03:56Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Why is Simulation/building bit file/ (insert here) so slow? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== General FAQ ==&lt;br /&gt;
===Why is Simulation/building bit file/ (insert here) so slow?===&lt;br /&gt;
If you are using the the cyfiles drive to do your work, these activities all seem to run much slower. The reason is that the cyfiles is a network mapped drive, so all reads/writes will have to traverse the network. To get around this, you can use the /tmp/ directory. You can copy your project to a directory, such as /tmp/.[username]/[projectfile]. The tmp directories are occasionally cleaned out, so do not leave unsaved work there. [[Media:UseTmpScript.sh | Here‎]] is a script that will copy a give folder the the path of /tmp/.[username]/[name of folder]. The script will check to see if there is already a directory there with the same name, and if so it will alert the user. If not it will just copy the directory. *IMPORTANT* Ensure to make a copy of any changes back into your actual working directory, since the /tmp/ directory is routinely cleaned up.&lt;br /&gt;
&lt;br /&gt;
=== How to start my own custom personality project? ===&lt;br /&gt;
Use the &#039;&#039;&#039;cnyScript&#039;&#039;&#039; as described in this tutorial: [[Convey PDK Tutorial]]&lt;br /&gt;
&lt;br /&gt;
=== How to add new verilog files or directories to a PDK project? ===&lt;br /&gt;
By default, the PDK looks like the project/verilog directory and compiles all .v files found there.  To add other Verilog directories, use this makefile variable:&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;nowiki&amp;gt;USER_VERILOG_DIRS  += ../../verilog&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Simulator Related ==&lt;br /&gt;
&lt;br /&gt;
==== Where can I find the personality signals? ====&lt;br /&gt;
You can find your custom personality signals in the &amp;quot;sim&amp;quot; window in ModelSim under &amp;lt;code&amp;gt;testbench &amp;gt; cae_fpga0 &amp;gt; ae_top &amp;gt; core &amp;gt; cae_pers&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== How to keep the waves I simulated? ====&lt;br /&gt;
After adding the signals to the wave window, make sure to click anywhere in the waves window. Then, click the save button and save the current signals as &amp;quot;do&amp;quot; file. Next time you want to show the previous signals, open ModelSim using the command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;vsim &amp;amp;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, in the ModelSim command-line, type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;do sim/wave.do&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, click the &amp;quot;open&amp;quot; button and open the &amp;quot;vsim.wlf&amp;quot; file in the &amp;quot;sim&amp;quot; directory of your project.&lt;br /&gt;
&lt;br /&gt;
==== How to run Modelsim GUI while simulating? ====&lt;br /&gt;
You may run the simulation in interactive mode by adding the following line to the makefile in the sim directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;USER_SIM_OPTIONS = -gui&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another option is to edit the test bench (sim/tb_user.v shown below) to dump the waveforms to a file, then run the hardware simulator via command line, and finally open up the waveform file (vsim -v ./sim/vsim.wlf).  This has the benefit of dumping all the signals (if your wave.do file was missing something, you&#039;d have to rerun the simulation).&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;`timescale 1 ns / 1 ps&lt;br /&gt;
&lt;br /&gt;
module tb_user();&lt;br /&gt;
&lt;br /&gt;
  initial begin&lt;br /&gt;
    // Insert user code here, such as signal dumping&lt;br /&gt;
    // set CNY_PDK_TB_USER_VLOG variable in sim/makefile&lt;br /&gt;
`include &amp;quot;PDK_SIM_CONFIG.vh&amp;quot;&lt;br /&gt;
`ifdef AE0_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga0.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE1_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga1.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE2_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga2.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE3_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga3.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
endmodule&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Emulator Related ==&lt;br /&gt;
&lt;br /&gt;
==== How to read AEG registers in the emulator? ====&lt;br /&gt;
You can use the following function:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
uint64 AegRead(int aeId, int aegIdx);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== How to read/write the memory in the emulator? ====&lt;br /&gt;
You can use the functions AeMemLoad and AeMemStore to read and write from/to the memory as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
bool AeMemLoad (int aeId, int mcId, unint64 addr, int size, bool bSigned, uint64 &amp;amp;data); &amp;lt;br /&amp;gt;&lt;br /&gt;
bool AeMemStore (int aeId, int mcId, unint64 addr, int size, bool bSigned, uint64 &amp;amp;data);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=File:UseTmpScript.sh&amp;diff=872</id>
		<title>File:UseTmpScript.sh</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=File:UseTmpScript.sh&amp;diff=872"/>
		<updated>2013-02-12T23:01:43Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: Script to help use the tmp directory for faster simulation/building bitfiles/ etc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Script to help use the tmp directory for faster simulation/building bitfiles/ etc&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Frequently_Asked_Questions&amp;diff=871</id>
		<title>Frequently Asked Questions</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Frequently_Asked_Questions&amp;diff=871"/>
		<updated>2013-02-12T22:59:11Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* General FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== General FAQ ==&lt;br /&gt;
===Why is Simulation/building bit file/ (insert here) so slow?===&lt;br /&gt;
If you are using the the cyfiles drive to do your work, these activities all seem to run much slower. The reason is that the cyfiles is a network mapped drive, so all reads/writes will have to traverse the network. To get around this, you can use the /tmp/ directory. You can copy your project to a directory, such as /tmp/.[username]/[projectfile]. The tmp directories are occasionally cleaned out, so do not leave unsaved work there. Here is a script that will copy a give folder the the path of /tmp/.[username]/[name of folder]. The script will check to see if there is already a directory there with the same name, and if so it will alert the user. If not it will just copy the directory. *IMPORTANT* Ensure to make a copy of any changes back into your actual working directory, since the /tmp/ directory is routinely cleaned up.&lt;br /&gt;
&lt;br /&gt;
=== How to start my own custom personality project? ===&lt;br /&gt;
Use the &#039;&#039;&#039;cnyScript&#039;&#039;&#039; as described in this tutorial: [[Convey PDK Tutorial]]&lt;br /&gt;
&lt;br /&gt;
=== How to add new verilog files or directories to a PDK project? ===&lt;br /&gt;
By default, the PDK looks like the project/verilog directory and compiles all .v files found there.  To add other Verilog directories, use this makefile variable:&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;nowiki&amp;gt;USER_VERILOG_DIRS  += ../../verilog&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Simulator Related ==&lt;br /&gt;
&lt;br /&gt;
==== Where can I find the personality signals? ====&lt;br /&gt;
You can find your custom personality signals in the &amp;quot;sim&amp;quot; window in ModelSim under &amp;lt;code&amp;gt;testbench &amp;gt; cae_fpga0 &amp;gt; ae_top &amp;gt; core &amp;gt; cae_pers&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== How to keep the waves I simulated? ====&lt;br /&gt;
After adding the signals to the wave window, make sure to click anywhere in the waves window. Then, click the save button and save the current signals as &amp;quot;do&amp;quot; file. Next time you want to show the previous signals, open ModelSim using the command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;vsim &amp;amp;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, in the ModelSim command-line, type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;do sim/wave.do&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, click the &amp;quot;open&amp;quot; button and open the &amp;quot;vsim.wlf&amp;quot; file in the &amp;quot;sim&amp;quot; directory of your project.&lt;br /&gt;
&lt;br /&gt;
==== How to run Modelsim GUI while simulating? ====&lt;br /&gt;
You may run the simulation in interactive mode by adding the following line to the makefile in the sim directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;USER_SIM_OPTIONS = -gui&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another option is to edit the test bench (sim/tb_user.v shown below) to dump the waveforms to a file, then run the hardware simulator via command line, and finally open up the waveform file (vsim -v ./sim/vsim.wlf).  This has the benefit of dumping all the signals (if your wave.do file was missing something, you&#039;d have to rerun the simulation).&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;`timescale 1 ns / 1 ps&lt;br /&gt;
&lt;br /&gt;
module tb_user();&lt;br /&gt;
&lt;br /&gt;
  initial begin&lt;br /&gt;
    // Insert user code here, such as signal dumping&lt;br /&gt;
    // set CNY_PDK_TB_USER_VLOG variable in sim/makefile&lt;br /&gt;
`include &amp;quot;PDK_SIM_CONFIG.vh&amp;quot;&lt;br /&gt;
`ifdef AE0_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga0.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE1_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga1.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE2_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga2.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
`ifdef AE3_PRESENT&lt;br /&gt;
    $wlfdumpvars(5,testbench.cae_fpga3.ae_top.core.cae_pers);&lt;br /&gt;
`endif&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
endmodule&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Emulator Related ==&lt;br /&gt;
&lt;br /&gt;
==== How to read AEG registers in the emulator? ====&lt;br /&gt;
You can use the following function:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
uint64 AegRead(int aeId, int aegIdx);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== How to read/write the memory in the emulator? ====&lt;br /&gt;
You can use the functions AeMemLoad and AeMemStore to read and write from/to the memory as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
bool AeMemLoad (int aeId, int mcId, unint64 addr, int size, bool bSigned, uint64 &amp;amp;data); &amp;lt;br /&amp;gt;&lt;br /&gt;
bool AeMemStore (int aeId, int mcId, unint64 addr, int size, bool bSigned, uint64 &amp;amp;data);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=826</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=826"/>
		<updated>2013-02-05T23:29:48Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Weekly Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
*Week 3 - [[Media:Cyc05_week3_presentation.pdf‎ | Presentation Slides Week 3]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
=== Tyler ===&lt;br /&gt;
*Week 1&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
*Week2&lt;br /&gt;
** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Week3&lt;br /&gt;
**[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
**Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
**Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
**Modified [[Tutorial: Creating a Custom Bitfile]], some details were unclear and/or left out about using your newly built bitfile&lt;br /&gt;
&lt;br /&gt;
=== Osama ===&lt;br /&gt;
*Week 1: Creating Team Cyc05 page.&lt;br /&gt;
*Week 2:&lt;br /&gt;
**Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy.&lt;br /&gt;
**Adding [[Frequently Asked Questions]] page.&lt;br /&gt;
* Week 3:&lt;br /&gt;
**Updating the [[Frequently Asked Questions]] page.&lt;br /&gt;
**Adding and maintaining the [[Using the Memory Controller Interface]] page.&lt;br /&gt;
&lt;br /&gt;
=== PengQing ===&lt;br /&gt;
*Week 1:&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*Week 2:&lt;br /&gt;
**[http://vol.verilog.com/VOL/main.htm Verilog self-study online course]&lt;br /&gt;
**Week 3:&lt;br /&gt;
***[http://www.ece.msstate.edu/~reese/EE4743/lectures/verilog_intro_2002/verilog_intro_2002.pdf Verilog vs. VHDL]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Cyc05_week3_presentation.pdf&amp;diff=825</id>
		<title>File:Cyc05 week3 presentation.pdf</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Cyc05_week3_presentation.pdf&amp;diff=825"/>
		<updated>2013-02-05T23:28:42Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: our week three presentation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;our week three presentation&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Tutorial:_Creating_a_Custom_Bitfile&amp;diff=803</id>
		<title>Tutorial: Creating a Custom Bitfile</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Tutorial:_Creating_a_Custom_Bitfile&amp;diff=803"/>
		<updated>2013-02-05T02:12:09Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Choose a New Signature */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers the creation and installation of a custom personality/bitfile (a modification of the vector adder sample project).&lt;br /&gt;
&lt;br /&gt;
== Building a Bitfile ==&lt;br /&gt;
Copy the newest version of the [[Running the Vector Adder Example Application#Compiling the Project|example project]] and set your [[Convey environment setup|environment variables]] if you have not done so already.  You can make a small modification to the verilog code if you wish, such as making it a vector subtractor instead of a vector adder.&lt;br /&gt;
&lt;br /&gt;
Next, compile your bitfile:&lt;br /&gt;
&lt;br /&gt;
 cd ~/pdk_sample/cae_vadd/phys&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
The bitfile will take a long time to create (while the Reference Manual states 2 to 4 hours, it may take much longer).  Be patient.&lt;br /&gt;
&lt;br /&gt;
Next, package your bitfile using the command:&lt;br /&gt;
&lt;br /&gt;
 make release&lt;br /&gt;
&lt;br /&gt;
After make release has finished there will be a directory on the same level as your top level project directory called:&lt;br /&gt;
&lt;br /&gt;
 myproject.released&lt;br /&gt;
&lt;br /&gt;
Inside of that folder there will be a folder with the current date. Go to the most recent directory and there will be a file called cae_fpga.tgz, this file needs to be copied into the directory:&lt;br /&gt;
&lt;br /&gt;
 /myprojectname/personalities/&amp;lt;personality number&amp;gt;/&lt;br /&gt;
&lt;br /&gt;
Example command:&lt;br /&gt;
&lt;br /&gt;
 cp cae_fpga.tgz ../../myprojectname/personalities/&amp;lt;personality number&amp;gt;/ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
Note that cae_fpga.tgz needs to be renamed to ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
Note that make and make release will NOT do this copy for you. If you forget you will still be using the old personality&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FPGA Usage Statistics ===&lt;br /&gt;
&lt;br /&gt;
The device usage statistics are displayed on the terminal while building the bitfile.  The log is saved to disk at:&lt;br /&gt;
&lt;br /&gt;
 {project directory}/phys/cae_fpga.map&lt;br /&gt;
 OR&lt;br /&gt;
 {project directory}/phys/cae_fpga.par&lt;br /&gt;
&lt;br /&gt;
Search the end of the log file for &amp;quot;Design Summay&amp;quot; for a percentage break down in LUT, Flip flop, and BRAM usage.&lt;br /&gt;
&lt;br /&gt;
== Choose a New Signature == &lt;br /&gt;
Custom personalities should not use the default PDK signature (4.1.1.1.0).  Choose a new signature between 65000 and 65535.  In this example, we will use 65123.1.1.1.0.&lt;br /&gt;
&lt;br /&gt;
You will need to create a new directory and copy the pertinent files to this directory:&lt;br /&gt;
&lt;br /&gt;
 cd /opt/convey/personalities&lt;br /&gt;
 mkdir 65123.1.1.1.0&lt;br /&gt;
 cd 65123.1.1.1.0&lt;br /&gt;
 &lt;br /&gt;
 cp /home/PROJECT_RELEASE/DATE/cae_fpga.tgz ./ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
This is the only required file, but you may copy PersDesc.dat from the default PDK folder to your new folder and uncomment additional custom instructions you have used.&lt;br /&gt;
&lt;br /&gt;
 cp /opt/convey/personalities/4.1.1.1.0/PersDesc.dat ./&lt;br /&gt;
&lt;br /&gt;
Instead of adding a new directory to Convey&#039;s personality folder as done above, you may set the CNY_PERSONALITY_PATH environment variable to any directory, i.e.&lt;br /&gt;
&lt;br /&gt;
 export CNY_PERSONALITY_PATH=/home/PROJECT_PATH/&lt;br /&gt;
   or&lt;br /&gt;
 setenv CNY_PERSONALITY_PATH /home/PROJECT_PATH/&lt;br /&gt;
&lt;br /&gt;
The default when the CNY_PERSONALITY_PATH is not set is to use the /opt/convey/personalities folder.&lt;br /&gt;
&lt;br /&gt;
You will also need to update the &#039;&#039;customdb&#039;&#039; file in /opt/convey/personalities (or create your own customdb file in your user defined personalities folder).  This file is used by the cny_get_signature function and converts strings to a signature number.  Our customdb file contains the following text:  &lt;br /&gt;
&lt;br /&gt;
 65123.1.1.1.0,subtractor&lt;br /&gt;
&lt;br /&gt;
Finally, there are certain places in the code where you should ensure that the signature has been updated.&lt;br /&gt;
&lt;br /&gt;
* In the simulator (/sim/CaeIsaVadd.cpp), update: &#039;&#039;&#039;#define PERS_SIGN_CAE 0xfe63001000101000LL&#039;&#039;&#039;, where 0xfe63 is the hex value for your signature (65123).&lt;br /&gt;
* In the C code, (SampleAppVadd/UserApp.c) update: &#039;&#039;&#039;cny_get_signature(&amp;quot;subtractor&amp;quot;, &amp;amp;sig, &amp;amp;sig2, &amp;amp;stat);&#039;&#039;&#039;, where &amp;quot;subtractor&amp;quot; is the pseudo name of your CAE given in the customdb file.&lt;br /&gt;
* In the assembly code, (SampleAppVadd/cpVadd.s) update the signature directive: &#039;&#039;&#039;.signature pdk=65123&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
When you change the personalities directory, flush the MP cache.  This will erase the cache, which is necessary if you&#039;ve updated your custom bitfile:&lt;br /&gt;
&lt;br /&gt;
 /opt/convey/sbin/mpcache -f&lt;br /&gt;
&lt;br /&gt;
You can also add a signature, and preload a given bitfile by using the commands:&lt;br /&gt;
&lt;br /&gt;
 /opt/convey/sbin/mpcache -add  -S&amp;lt;personality number&amp;gt;&lt;br /&gt;
 /opt/convey/sbin/mpcache -load -S&amp;lt;personality number&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional details are available in Appendix D of the [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]].&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] - Sections 9.4.6, 9.4.7, 10, Appendix D&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=802</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=802"/>
		<updated>2013-02-05T02:11:03Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
**Week3&lt;br /&gt;
***[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
***Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
***Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
***Modified [[Tutorial: Creating a Custom Bitfile]], some details were unclear and/or left out about using your newly built bitfile&lt;br /&gt;
*Osama&lt;br /&gt;
**Week 1: Creating Team Cyc05 page.&lt;br /&gt;
**Week 2:&lt;br /&gt;
***Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy&lt;br /&gt;
***Adding [[Frequently Asked Questions]] page&lt;br /&gt;
&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Tutorial:_Creating_a_Custom_Bitfile&amp;diff=801</id>
		<title>Tutorial: Creating a Custom Bitfile</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Tutorial:_Creating_a_Custom_Bitfile&amp;diff=801"/>
		<updated>2013-02-05T02:10:09Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Building a Bitfile */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers the creation and installation of a custom personality/bitfile (a modification of the vector adder sample project).&lt;br /&gt;
&lt;br /&gt;
== Building a Bitfile ==&lt;br /&gt;
Copy the newest version of the [[Running the Vector Adder Example Application#Compiling the Project|example project]] and set your [[Convey environment setup|environment variables]] if you have not done so already.  You can make a small modification to the verilog code if you wish, such as making it a vector subtractor instead of a vector adder.&lt;br /&gt;
&lt;br /&gt;
Next, compile your bitfile:&lt;br /&gt;
&lt;br /&gt;
 cd ~/pdk_sample/cae_vadd/phys&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
The bitfile will take a long time to create (while the Reference Manual states 2 to 4 hours, it may take much longer).  Be patient.&lt;br /&gt;
&lt;br /&gt;
Next, package your bitfile using the command:&lt;br /&gt;
&lt;br /&gt;
 make release&lt;br /&gt;
&lt;br /&gt;
After make release has finished there will be a directory on the same level as your top level project directory called:&lt;br /&gt;
&lt;br /&gt;
 myproject.released&lt;br /&gt;
&lt;br /&gt;
Inside of that folder there will be a folder with the current date. Go to the most recent directory and there will be a file called cae_fpga.tgz, this file needs to be copied into the directory:&lt;br /&gt;
&lt;br /&gt;
 /myprojectname/personalities/&amp;lt;personality number&amp;gt;/&lt;br /&gt;
&lt;br /&gt;
Example command:&lt;br /&gt;
&lt;br /&gt;
 cp cae_fpga.tgz ../../myprojectname/personalities/&amp;lt;personality number&amp;gt;/ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
Note that cae_fpga.tgz needs to be renamed to ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
Note that make and make release will NOT do this copy for you. If you forget you will still be using the old personality&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FPGA Usage Statistics ===&lt;br /&gt;
&lt;br /&gt;
The device usage statistics are displayed on the terminal while building the bitfile.  The log is saved to disk at:&lt;br /&gt;
&lt;br /&gt;
 {project directory}/phys/cae_fpga.map&lt;br /&gt;
 OR&lt;br /&gt;
 {project directory}/phys/cae_fpga.par&lt;br /&gt;
&lt;br /&gt;
Search the end of the log file for &amp;quot;Design Summay&amp;quot; for a percentage break down in LUT, Flip flop, and BRAM usage.&lt;br /&gt;
&lt;br /&gt;
== Choose a New Signature == &lt;br /&gt;
Custom personalities should not use the default PDK signature (4.1.1.1.0).  Choose a new signature between 65000 and 65535.  In this example, we will use 65123.1.1.1.0.&lt;br /&gt;
&lt;br /&gt;
You will need to create a new directory and copy the pertinent files to this directory:&lt;br /&gt;
&lt;br /&gt;
 cd /opt/convey/personalities&lt;br /&gt;
 mkdir 65123.1.1.1.0&lt;br /&gt;
 cd 65123.1.1.1.0&lt;br /&gt;
 &lt;br /&gt;
 cp /home/PROJECT_RELEASE/DATE/cae_fpga.tgz ./ae_fpga.tgz&lt;br /&gt;
&lt;br /&gt;
This is the only required file, but you may copy PersDesc.dat from the default PDK folder to your new folder and uncomment additional custom instructions you have used.&lt;br /&gt;
&lt;br /&gt;
 cp /opt/convey/personalities/4.1.1.1.0/PersDesc.dat ./&lt;br /&gt;
&lt;br /&gt;
Instead of adding a new directory to Convey&#039;s personality folder as done above, you may set the CNY_PERSONALITY_PATH environment variable to any directory, i.e.&lt;br /&gt;
&lt;br /&gt;
 export CNY_PERSONALITY_PATH=/home/PROJECT_PATH/&lt;br /&gt;
   or&lt;br /&gt;
 setenv CNY_PERSONALITY_PATH /home/PROJECT_PATH/&lt;br /&gt;
&lt;br /&gt;
The default when the CNY_PERSONALITY_PATH is not set is to use the /opt/convey/personalities folder.&lt;br /&gt;
&lt;br /&gt;
You will also need to update the &#039;&#039;customdb&#039;&#039; file in /opt/convey/personalities (or create your own customdb file in your user defined personalities folder).  This file is used by the cny_get_signature function and converts strings to a signature number.  Our customdb file contains the following text:  &lt;br /&gt;
&lt;br /&gt;
 65123.1.1.1.0,subtractor&lt;br /&gt;
&lt;br /&gt;
Finally, there are certain places in the code where you should ensure that the signature has been updated.&lt;br /&gt;
&lt;br /&gt;
* In the simulator (/sim/CaeIsaVadd.cpp), update: &#039;&#039;&#039;#define PERS_SIGN_CAE 0xfe63001000101000LL&#039;&#039;&#039;, where 0xfe63 is the hex value for your signature (65123).&lt;br /&gt;
* In the C code, (SampleAppVadd/UserApp.c) update: &#039;&#039;&#039;cny_get_signature(&amp;quot;subtractor&amp;quot;, &amp;amp;sig, &amp;amp;sig2, &amp;amp;stat);&#039;&#039;&#039;, where &amp;quot;subtractor&amp;quot; is the pseudo name of your CAE given in the customdb file.&lt;br /&gt;
* In the assembly code, (SampleAppVadd/cpVadd.s) update the signature directive: &#039;&#039;&#039;.signature pdk=65123&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
When you change the personalities directory, flush the MP cache.  This will erase the cache, which is necessary if you&#039;ve updated your custom bitfile:&lt;br /&gt;
&lt;br /&gt;
 /opt/convey/sbin/mpcache -f&lt;br /&gt;
&lt;br /&gt;
You can also add a signature, and preload a given bitfile by using the commands:&lt;br /&gt;
&lt;br /&gt;
 /opt/convey/sbin/mpcache -add  -S&amp;lt;personality&amp;gt;&lt;br /&gt;
 /opt/convey/sbin/mpcache -load -S&amp;lt;personality&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional details are available in Appendix D of the [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]].&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] - Sections 9.4.6, 9.4.7, 10, Appendix D&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=793</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=793"/>
		<updated>2013-02-02T22:42:59Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
**Week3&lt;br /&gt;
***[[Adding VHDL Files to a Project]] Additions and alterations&lt;br /&gt;
***Hosted the scripts for Kevinss tutorial and provided a link for it&lt;br /&gt;
***Modified the landing page to Kevni&#039;t tutorial to have the pdf, and a link to the scripts&lt;br /&gt;
*Osama&lt;br /&gt;
**Week 1: Creating Team Cyc05 page.&lt;br /&gt;
**Week 2:&lt;br /&gt;
***Updating [[Connecting to convey-1.ece.iastate.edu]] with usage policy&lt;br /&gt;
***Adding [[Frequently Asked Questions]] page&lt;br /&gt;
&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=792</id>
		<title>Adding VHDL Files to a Project</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=792"/>
		<updated>2013-02-02T22:38:59Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Using Your VHDL Module In The Top Level cae_pers.v File */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using Your VHDL Module In The Top Level cae_pers.v File==&lt;br /&gt;
=== Entity Definition ===&lt;br /&gt;
&lt;br /&gt;
 entity test is&lt;br /&gt;
 port(&lt;br /&gt;
      in1 : in std_logic;&lt;br /&gt;
      in2 : in std_logic;&lt;br /&gt;
      out1: out std_logic);&lt;br /&gt;
 end entity;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Instantiation in Verilog ===&lt;br /&gt;
&lt;br /&gt;
*It will look exactly like any other module instantiation in verilog.&lt;br /&gt;
 test t1(&lt;br /&gt;
      .in1(myInput),&lt;br /&gt;
      .in2(myOtherInput),&lt;br /&gt;
      .out(myOutput)&lt;br /&gt;
      );&lt;br /&gt;
=== Module With Vectors ===&lt;br /&gt;
*If we change the earlier definition to look like the following&lt;br /&gt;
 entity testWithVector is&lt;br /&gt;
 port(&lt;br /&gt;
      in1 : in std_logic_vector(63 downto 0);&lt;br /&gt;
      in2 : in std_logic_vector(63 downto 0);&lt;br /&gt;
      out1: out std_logic);&lt;br /&gt;
 end entity;&lt;br /&gt;
*Notice that the expected input is a 64 bit wide signal path&lt;br /&gt;
*Assume that you have a Verilog reg as follows&lt;br /&gt;
 reg [63:0] myReg;&lt;br /&gt;
 reg [63:0] myOtherReg;&lt;br /&gt;
*Modlesim will let you directly map myReg to in1 or in2 (see below), however ISE will generally fail to compile this code, with an error about the expected size being incorrect&lt;br /&gt;
 test t1(&lt;br /&gt;
      .in1(myReg),&lt;br /&gt;
      .in2(myOtherReg),&lt;br /&gt;
      .out(myOutput)&lt;br /&gt;
      );&lt;br /&gt;
*The easiest way around this is to map myReg to a wire, and use that in the instantiation of your VHDL module&lt;br /&gt;
 wire [63:0] wire_myReg;&lt;br /&gt;
 wire [63:0] wire_myOtherReg;&lt;br /&gt;
 assign wire_myReg = myReg;&lt;br /&gt;
 assign wire_myOtherReg = myOtherReg;&lt;br /&gt;
 &lt;br /&gt;
 test t1(&lt;br /&gt;
      .in1(wire_myReg),&lt;br /&gt;
      .in2(wire_myOtherReg),&lt;br /&gt;
      .out(myOutput)&lt;br /&gt;
      );&lt;br /&gt;
&lt;br /&gt;
== Include Option 1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project makefile:&lt;br /&gt;
 &lt;br /&gt;
 USER_VHDL_FILES += file1.vhd file2.vhd&lt;br /&gt;
 &lt;br /&gt;
The PDK makefile automatically compiles your VHDL files for simulation and includes them in the Xilinx project file for synthesis.  Note that compile order is important with VHDL, so you should list the files in the appropriate order you want them compiled.&lt;br /&gt;
&lt;br /&gt;
== Include Option 1.1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project&#039;s top level Makefile.include:&lt;br /&gt;
 USER_VHDL_FILES += ../vhdl/file.vhd&lt;br /&gt;
*Still use the ../ because this path will get included in the lower level directories, and the makefile there will still expect a relative path.&lt;br /&gt;
&lt;br /&gt;
== Include Option 2 == &lt;br /&gt;
Create site and/or user directories that include your own makefile.  The PDK automatically searches these directories for a file called &amp;quot;Makefile.cnypdk&amp;quot; and includes that in the default makefile:&lt;br /&gt;
 &lt;br /&gt;
CNY_PDK_USER_DIRECTORY&lt;br /&gt;
CNY_PDK_SITE_DIRECTORY&lt;br /&gt;
 &lt;br /&gt;
This is a good place to set which simulator you use, set up signal tracing, etc.&lt;br /&gt;
 &lt;br /&gt;
== Other information == &lt;br /&gt;
There are also several variables in the makefile that allow you to create dependencies for your own make flow.  For example, the variable USER_SIM_DEPENDENCIES is listed as a dependency for the simulation, so if you want to run your own compile step before running the simulation, you can set that variable and the dependency will cause it to run that step at the right time.  Others are USER_COMPILE_DEPENDENCIES and USER_PHYS_DEPENDENCIES, which is a dependency of the synthesis target.&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=791</id>
		<title>Adding VHDL Files to a Project</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=791"/>
		<updated>2013-02-02T22:24:11Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using Your VHDL Module In The Top Level cae_pers.v File==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Include Option 1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project makefile:&lt;br /&gt;
 &lt;br /&gt;
 USER_VHDL_FILES += file1.vhd file2.vhd&lt;br /&gt;
 &lt;br /&gt;
The PDK makefile automatically compiles your VHDL files for simulation and includes them in the Xilinx project file for synthesis.  Note that compile order is important with VHDL, so you should list the files in the appropriate order you want them compiled.&lt;br /&gt;
&lt;br /&gt;
== Include Option 1.1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project&#039;s top level Makefile.include:&lt;br /&gt;
 USER_VHDL_FILES += ../vhdl/file.vhd&lt;br /&gt;
*Still use the ../ because this path will get included in the lower level directories, and the makefile there will still expect a relative path.&lt;br /&gt;
&lt;br /&gt;
== Include Option 2 == &lt;br /&gt;
Create site and/or user directories that include your own makefile.  The PDK automatically searches these directories for a file called &amp;quot;Makefile.cnypdk&amp;quot; and includes that in the default makefile:&lt;br /&gt;
 &lt;br /&gt;
CNY_PDK_USER_DIRECTORY&lt;br /&gt;
CNY_PDK_SITE_DIRECTORY&lt;br /&gt;
 &lt;br /&gt;
This is a good place to set which simulator you use, set up signal tracing, etc.&lt;br /&gt;
 &lt;br /&gt;
== Other information == &lt;br /&gt;
There are also several variables in the makefile that allow you to create dependencies for your own make flow.  For example, the variable USER_SIM_DEPENDENCIES is listed as a dependency for the simulation, so if you want to run your own compile step before running the simulation, you can set that variable and the dependency will cause it to run that step at the right time.  Others are USER_COMPILE_DEPENDENCIES and USER_PHYS_DEPENDENCIES, which is a dependency of the synthesis target.&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=790</id>
		<title>Adding VHDL Files to a Project</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Adding_VHDL_Files_to_a_Project&amp;diff=790"/>
		<updated>2013-02-02T22:20:42Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Option 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Option 1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project makefile:&lt;br /&gt;
 &lt;br /&gt;
 USER_VHDL_FILES += file1.vhd file2.vhd&lt;br /&gt;
 &lt;br /&gt;
The PDK makefile automatically compiles your VHDL files for simulation and includes them in the Xilinx project file for synthesis.  Note that compile order is important with VHDL, so you should list the files in the appropriate order you want them compiled.&lt;br /&gt;
&lt;br /&gt;
== Option 1.1 ==&lt;br /&gt;
Use the USER_VHDL_FILES variable in the project&#039;s top level Makefile.include:&lt;br /&gt;
 USER_VHDL_FILES += ../vhdl/file.vhd&lt;br /&gt;
 *Still use the ../ because this path will get included in the lower level directories, and will still expect a relative path.&lt;br /&gt;
&lt;br /&gt;
== Option 2 == &lt;br /&gt;
Create site and/or user directories that include your own makefile.  The PDK automatically searches these directories for a file called &amp;quot;Makefile.cnypdk&amp;quot; and includes that in the default makefile:&lt;br /&gt;
 &lt;br /&gt;
CNY_PDK_USER_DIRECTORY&lt;br /&gt;
CNY_PDK_SITE_DIRECTORY&lt;br /&gt;
 &lt;br /&gt;
This is a good place to set which simulator you use, set up signal tracing, etc.&lt;br /&gt;
 &lt;br /&gt;
== Other information == &lt;br /&gt;
There are also several variables in the makefile that allow you to create dependencies for your own make flow.  For example, the variable USER_SIM_DEPENDENCIES is listed as a dependency for the simulation, so if you want to run your own compile step before running the simulation, you can set that variable and the dependency will cause it to run that step at the right time.  Others are USER_COMPILE_DEPENDENCIES and USER_PHYS_DEPENDENCIES, which is a dependency of the synthesis target.&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=787</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=787"/>
		<updated>2013-01-30T02:18:02Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Convey HC-1 Tutorials */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* [[Convey PDK Tutorial]]&lt;br /&gt;
&amp;lt;!-- * Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script) --&amp;gt;&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
* [[Frequently Asked Questions]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
* [http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
* [http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*  Convey vector personalities offer OpenMP-like programming approach with FPGA accelerating. [http://www.fpl2012.org/Presentations/W4B2.pdf]&lt;br /&gt;
* [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;br /&gt;
* [[Team Blitz]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=786</id>
		<title>Convey PDK Tutorial</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=786"/>
		<updated>2013-01-30T02:17:13Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Convey PDK Tutorial */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Media:ConveyTutorial1.pdf | Tutorial PDF]] &lt;br /&gt;
&lt;br /&gt;
[http://www.public.iastate.edu/~tyler07/cnyScripts.tar.gz Required Scripts]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=785</id>
		<title>Convey PDK Tutorial</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=785"/>
		<updated>2013-01-30T02:16:38Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Convey PDK Tutorial==&lt;br /&gt;
[[Media:ConveyTutorial1.pdf | Tutorial PDF]] &lt;br /&gt;
&lt;br /&gt;
[http://www.public.iastate.edu/~tyler07/cnyScripts.tar.gz Required Scripts]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=784</id>
		<title>Convey PDK Tutorial</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Convey_PDK_Tutorial&amp;diff=784"/>
		<updated>2013-01-30T01:55:36Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: New page:  Tutorial PDF   Scripts Directory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[image:ConveyTutorial1.pdf | Tutorial PDF]] &lt;br /&gt;
[[medial: | Scripts Directory]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=783</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=783"/>
		<updated>2013-01-30T01:55:04Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Convey HC-1 Tutorials */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* [[Convey PDK Tutorial]]&lt;br /&gt;
* Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script)&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
* [[Frequently Asked Questions]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
* [http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
* [http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*  Convey vector personalities offer OpenMP-like programming approach with FPGA accelerating. [http://www.fpl2012.org/Presentations/W4B2.pdf]&lt;br /&gt;
* [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;br /&gt;
* [[Team Blitz]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=776</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=776"/>
		<updated>2013-01-29T21:30:58Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Osama&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=775</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=775"/>
		<updated>2013-01-29T21:30:27Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Weekly Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation Slides Week 1]]&lt;br /&gt;
*Week 2 - [[Media:Cyc05_Week_2.pdf | Presentation Slides Week 2]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Cyc05_Week_2.pdf&amp;diff=774</id>
		<title>File:Cyc05 Week 2.pdf</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Cyc05_Week_2.pdf&amp;diff=774"/>
		<updated>2013-01-29T21:29:13Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=773</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=773"/>
		<updated>2013-01-29T21:27:04Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Weekly Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 - [[Media:Cyc05_-_Presentation_01.pdf | Presentation 1]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=772</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=772"/>
		<updated>2013-01-29T21:26:45Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Weekly Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [[Media:Cyc05_-_Presentation_01.pdf |: Presentation 1]]&lt;br /&gt;
&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=771</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=771"/>
		<updated>2013-01-29T21:26:33Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [[Media:Cyc05_-_Presentation_01.pdf | Presentation 1]]&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=766</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=766"/>
		<updated>2013-01-29T19:58:26Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [[Media:Cyc05_-_Presentation_01.pdf]]&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
*** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Osama&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=765</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=765"/>
		<updated>2013-01-29T19:58:11Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [[Media:Cyc05_-_Presentation_01.pdf]]&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**Week 1&lt;br /&gt;
***[[Useful Modelsim Commands]]&lt;br /&gt;
***[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
**Week2&lt;br /&gt;
**** [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
*Osama&lt;br /&gt;
*PengQing&lt;br /&gt;
**[http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
**[http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=764</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=764"/>
		<updated>2013-01-29T19:57:35Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Helpful Guides */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script)&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
* [http://sn0v.wordpress.com/2012/12/07/installing-cuda-5-on-ubuntu-12-04/ Installing CUDA on Ubuntu]&lt;br /&gt;
* [http://graphics.stanford.edu/~mhouston/public_talks/R520-mhouston.pdf General Purpose Computation on GPUs (GPGPU)]&lt;br /&gt;
*  Convey vector personalities offer OpenMP-like programming approach with FPGA accelerating. [http://www.fpl2012.org/Presentations/W4B2.pdf]&lt;br /&gt;
* [[Media:Connect_Remotely_Via_VPN.pdf | Guide to Remote Connecting]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;br /&gt;
* [[Team Blitz]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Connect_Remotely_Via_VPN.pdf&amp;diff=763</id>
		<title>File:Connect Remotely Via VPN.pdf</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Connect_Remotely_Via_VPN.pdf&amp;diff=763"/>
		<updated>2013-01-29T19:56:19Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: Guide to remote connect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Guide to remote connect&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=716</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=716"/>
		<updated>2013-01-21T19:56:34Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Wiki Contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [Insert Link]&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
*Osama&lt;br /&gt;
*PengQing&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=715</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=715"/>
		<updated>2013-01-21T19:55:48Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [Insert Link]&lt;br /&gt;
== Wiki Contributions ==&lt;br /&gt;
*Tyler&lt;br /&gt;
**[[Useful Modelsim Commands]]&lt;br /&gt;
**[[Modelsim Users Guide]]&lt;br /&gt;
*Osama&lt;br /&gt;
*PengQing&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=714</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=714"/>
		<updated>2013-01-21T19:53:04Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Helpful Guides */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script)&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Media:Modelsim_pe_user_10.0d.pdf | Modelsim Users Guide]]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Modelsim_pe_user_10.0d.pdf&amp;diff=713</id>
		<title>File:Modelsim pe user 10.0d.pdf</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=File:Modelsim_pe_user_10.0d.pdf&amp;diff=713"/>
		<updated>2013-01-21T19:48:13Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: Modelsim users manual v10.0&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Modelsim users manual v10.0&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=712</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=712"/>
		<updated>2013-01-21T19:45:22Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Helpful Guides */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script)&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Modelsim Users Manual]]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Useful_Modelsim_Commands&amp;diff=711</id>
		<title>Useful Modelsim Commands</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Useful_Modelsim_Commands&amp;diff=711"/>
		<updated>2013-01-21T19:41:20Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Useful Modelsim Commands */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful Modelsim Commands ==&lt;br /&gt;
Restart A Simulation&lt;br /&gt;
 restart -f&lt;br /&gt;
&lt;br /&gt;
Save a waveform to a .wlf file&lt;br /&gt;
 dataset save [dataset] [output file]&lt;br /&gt;
&lt;br /&gt;
 You can also start vsim with the -wlf flag, which will automatically save the waveform to a .wlf file.&lt;br /&gt;
 However, doing the save from the command line after the simulation has been run, will be safer in terms of overwriting old .wlf files you may want to keep around.&lt;br /&gt;
&lt;br /&gt;
List the available datasets&lt;br /&gt;
 dataset list&lt;br /&gt;
&lt;br /&gt;
Run the whole test bench&lt;br /&gt;
 run -all&lt;br /&gt;
&lt;br /&gt;
Run the simulation for n amount of time&lt;br /&gt;
 run [n][unit] e.x. run 100us&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Useful_Modelsim_Commands&amp;diff=710</id>
		<title>Useful Modelsim Commands</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Useful_Modelsim_Commands&amp;diff=710"/>
		<updated>2013-01-21T19:41:01Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: New page: == Useful Modelsim Commands == Restart A Simulation  restart -f  Save a waveform to a .wlf file  dataset save [dataset] [output file]   You can also start vsim with the -wlf flag, which wi...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful Modelsim Commands ==&lt;br /&gt;
Restart A Simulation&lt;br /&gt;
 restart -f&lt;br /&gt;
&lt;br /&gt;
Save a waveform to a .wlf file&lt;br /&gt;
 dataset save [dataset] [output file]&lt;br /&gt;
&lt;br /&gt;
 You can also start vsim with the -wlf flag, which will automatically save the waveform to a .wlf file.&lt;br /&gt;
 However, doing the save from the command line after the simulation has been run will be safer in terms of overwriting old .wlf files you may want to keep around.&lt;br /&gt;
&lt;br /&gt;
List the available datasets&lt;br /&gt;
 dataset list&lt;br /&gt;
&lt;br /&gt;
Run the whole test bench&lt;br /&gt;
 run -all&lt;br /&gt;
&lt;br /&gt;
Run the simulation for n amount of time&lt;br /&gt;
 run [n][unit] e.x. run 100us&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=709</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Main_Page&amp;diff=709"/>
		<updated>2013-01-21T19:33:37Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: /* Helpful Guides */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Articles ==&lt;br /&gt;
=== Convey HC-1 Tutorials ===&lt;br /&gt;
* [[Connecting to convey-1.ece.iastate.edu]]&lt;br /&gt;
* [[Convey environment setup|Setting Up Environment Variables on Convey&#039;s HC-1]]&lt;br /&gt;
* [[Running the Vector Adder Example Application]]&lt;br /&gt;
* Convey pdk tutorial: [[image:ConveyTutorial1.pdf]] (uses newCnyProject script)&lt;br /&gt;
* [[Analyze the Simpleton Basic App]]&lt;br /&gt;
* [[Tutorial: Creating a Custom Bitfile | Create a Custom Bitfile]]&lt;br /&gt;
* [[Using a Custom Bitfile in C Code]]&lt;br /&gt;
* [[Adding VHDL Files to a Project]]&lt;br /&gt;
* [[The Verilog Hardware Interface for CAE]]&lt;br /&gt;
* [[Using ISE&#039;s Core Generator to build FIFOs and other IP cores]]&lt;br /&gt;
* [[Running Different Bitfiles on each AE | Projects with Multiple Bitfiles]]&lt;br /&gt;
* [[Using the Write-Complete Interface]]&lt;br /&gt;
* [[Using the Timing Analyzer]]&lt;br /&gt;
&lt;br /&gt;
* [[Using SPAT]]&lt;br /&gt;
* [[Using GPROF]]&lt;br /&gt;
* [[Convey vector example | Example of Loop Unrolling using FPGA]]&lt;br /&gt;
* [[Sobel Algorithm | Speeding up Sobel Algorithm]]&lt;br /&gt;
&lt;br /&gt;
== Reference Manuals ==&lt;br /&gt;
=== Convey ===&lt;br /&gt;
* [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] (updated to V5.2; April 2012)&lt;br /&gt;
* [[Media:ConveyProgrammersGuide.pdf | Convey Programmers Guide (.pdf)]] (updated to V1.8; November 2010)&lt;br /&gt;
* [[Media:ConveyReferenceManual.pdf | Convey Reference Manual (.pdf)]]&lt;br /&gt;
* [[Media:ConveySpatUsersGuide.pdf | Convey SPAT (Simulator Performance Analysis Tool) Guide]]&lt;br /&gt;
* [[Media:Convey PDK Training.pdf | Convey PDK (.pdf)]]&lt;br /&gt;
* [[Media:Convey Overview.pdf | Convey Overview (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
The newet version of these documents are available at [http://www.conveysupport.com/help/?page_id=112 Convey&#039;s Support Site]&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
* [[Media:CUDA_C_Programming_Guide.pdf | CUDA_C_Programming_Guide (.pdf)]]&lt;br /&gt;
* [[Media:CUDA_C_Best_Practices_Guide.pdf | CUDA_C_Best_Practices_Guide(.pdf)]]&lt;br /&gt;
* [[Media:CUDA_Memory.pdf | CUDA_Memory (.pdf)]]&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.asic-world.com www.asic-world.com] - Great Tutorials for those Learning HDLs&lt;br /&gt;
* [http://memocode.irisa.fr MemoCODE 2012]&lt;br /&gt;
** [[Media:2012-memocode-contest.pdf | MemoCODE Contest.pdf]]&lt;br /&gt;
** [http://memocode.irisa.fr/2012/2012-memocode-contest.tar.gz Reference Implementation]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/technical/reference/human_g1k_v37.fasta.gz Human Reference Genome (human_g1k_v37.fasta.gz)]&lt;br /&gt;
** [ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (ERR050082.filt.fastq.gz)]&lt;br /&gt;
** [http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/data/NA06985/sequence_read/ERR050082.filt.fastq.gz Example Reads (Alternative Link) (ERR050082.filt.fastq.gz)]&lt;br /&gt;
&lt;br /&gt;
* [[2010 Main Page | CprE 584 2010 Wiki Main Page]]&lt;br /&gt;
* [http://class.ee.iastate.edu/cpre583/ CprE 583 Website]&lt;br /&gt;
* [http://class.ece.iastate.edu/cpre584/ CprE 584 Website]&lt;br /&gt;
&lt;br /&gt;
=== Other Articles ===&lt;br /&gt;
* [[Assignment|Assignments]]&lt;br /&gt;
* [[A quick start on CUDA]]&lt;br /&gt;
&lt;br /&gt;
== Helpful Guides ==&lt;br /&gt;
* [http://www.c7t-hdl.com/Docs/C7T_AN05_Customized_WaveView_ModelSim_ISE.pdf Modelsim and ISE]&lt;br /&gt;
* [http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf The Verilog Golden Reference]&lt;br /&gt;
* [http://courseware.ee.calpoly.edu/~bmealy/shock_awe_vhdl_adobe.pdf &amp;quot;The Shock and Awe&amp;quot; VHDL Tutorial]&lt;br /&gt;
* [http://esd.cs.ucr.edu/labs/tutorial/ VHDL Simple Code Examples]&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html VHDL Primer]&lt;br /&gt;
* [http://www.kxcad.net/electronic_Xilinx_guide/mergedProjects/xsim/html/xs_p_ml_instantiation.htm Using VHDL components in Verilog]&lt;br /&gt;
* [[Useful Modelsim Commands]]&lt;br /&gt;
&lt;br /&gt;
== Readings for Memocode 2012 ==&lt;br /&gt;
*[[Media:Brief_Bioinform-2010-Li-473-83.pdf|A survey on algorithms for sequencing]]&lt;br /&gt;
*[[Media:Gb-2009-10-3-r25.pdf|Burrows-Wheeler indexing]]&lt;br /&gt;
&lt;br /&gt;
== Spring 2012 Teams ==&lt;br /&gt;
* [[Team Gryffindor]]&lt;br /&gt;
* [[Team Slytherin]]&lt;br /&gt;
* [[Team 142857]]&lt;br /&gt;
== Spring 2013 Teams ==&lt;br /&gt;
* [[Team Cyc05]]&lt;br /&gt;
* [[Team Challenger]]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Running_the_Vector_Adder_Example_Application&amp;diff=708</id>
		<title>Running the Vector Adder Example Application</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Running_the_Vector_Adder_Example_Application&amp;diff=708"/>
		<updated>2013-01-21T19:08:46Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: It wasn&amp;#039;t clear to me which makefile to edit, so I specifically noted which one to edit for the USER_SIM_OPTIONS = -gui&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Section 10.5 of the [[Media:ConveyPDKReferenceManual.pdf | Convey PDK Reference Manual (.pdf)]] explains how to run the sample software application.  It has been reproduced below in brief.&lt;br /&gt;
&lt;br /&gt;
== Compiling the Project ==&lt;br /&gt;
The rev version installed on the Convey machine is from 2012-03-19; to copy the sample app&#039;s source code run:&lt;br /&gt;
 cd ~&lt;br /&gt;
 mkdir pdk_sample&lt;br /&gt;
 cp -r /opt/convey/pdk/latest/hc-1/examples/* pdk_sample&lt;br /&gt;
&lt;br /&gt;
To make the sample project, first make sure you have [[Convey environment setup|setup your environment variables]], then run:&lt;br /&gt;
&lt;br /&gt;
 cd ~/pdk_sample/cae_pers_vadd/SampleAppVadd/&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
This compiles both an emulator (CaeSimPers) and a C program that makes a coprocessor call to use the vector adder (UserApp.exe).  &lt;br /&gt;
&lt;br /&gt;
== Run the Project ==&lt;br /&gt;
There are three ways to run your project:&lt;br /&gt;
# A software simulation of the FPGA design&lt;br /&gt;
# A hardware simulation (ModelSim) of the FPGA design&lt;br /&gt;
# The actual implementation (C code, Verilog code).  The bitfile was previously compiled, nicknamed, and added to a known file location (/opt/convey/personalties/...).&lt;br /&gt;
&lt;br /&gt;
There are some scripts that can be used to run the various projects.  &lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;runcp&#039;&#039;&#039; (i.e. run coprocessor) script located in the SampleAppVadd can be used to run the application in HW which sets the appropriate environment variables and runs the UserApp.exe:&lt;br /&gt;
&lt;br /&gt;
   ./runcp&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;run&#039;&#039;&#039; script located in the SampleAppVadd can be used to run the application using the software simulation of the FPGA design.&lt;br /&gt;
&lt;br /&gt;
   ./run&lt;br /&gt;
&lt;br /&gt;
Using the &amp;quot;-vsim&amp;quot; option, either script can be used to run the application using the hardware simulation (ModelSim).  The &amp;quot;-vsim&amp;quot; option sets the environment variable CNY_CAE_EMULATOR to ./run_simulation:&lt;br /&gt;
&lt;br /&gt;
   ./runcp -vsim&lt;br /&gt;
       or&lt;br /&gt;
   ./run -vsim&lt;br /&gt;
&lt;br /&gt;
To summarize the important environment variables:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Environment Variables&#039;&#039;&#039; || &#039;&#039;&#039;Software&#039;&#039;&#039; || &#039;&#039;&#039;ModelSim&#039;&#039;&#039; || &#039;&#039;&#039;Hardware&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|CNY_SIM_THREAD || libcpSimLib2.so || libcpSimLib2.so || &#039;&#039;unset&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|CNY_CAE_EMULATOR || &amp;lt;location for CaeSimPers&amp;gt; || ./run_simulation || &#039;&#039;unset&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Interactive Mode for ModelSim Simulation ===&lt;br /&gt;
Source: http://www.conveysupport.com/help/?p=215&lt;br /&gt;
&lt;br /&gt;
You can save the waveforms every time you run the hardware simulator to make debugging easier.&lt;br /&gt;
&lt;br /&gt;
Add the $wlfdumpvars line to the sim/tb_user.v file:&lt;br /&gt;
 // To trace everything (slow)&lt;br /&gt;
 $wlfdumpvars(0, testbench);&lt;br /&gt;
 // To trace cae_pers module and 5 levels below&lt;br /&gt;
 `ifdef AE0_PRESENT&lt;br /&gt;
   $wlfdumpvars(5,testbench.cae_fpga0.ae_top.core.cae_pers);&lt;br /&gt;
&lt;br /&gt;
Then include that file in the sim/Makefile by adding this line this line:&lt;br /&gt;
CNY_PDK_TB_USER_VLOG += ./tb_user.v&lt;br /&gt;
&lt;br /&gt;
This will create a vsim.wlf file in the sim directory.  You can view the waveform using any of the following terminal commands:&lt;br /&gt;
 vsim ../sim/vsim.wlf&lt;br /&gt;
 vsim -view ../sim/vsim.wlf&lt;br /&gt;
&lt;br /&gt;
Alternatively, you may instead run the simulation in interactive mode by adding the following line to the makefile in the sim directory:&lt;br /&gt;
 USER_SIM_OPTIONS = -gui&lt;br /&gt;
Then run the app (./run -vsim) to start the simulation.  When the Modelsim GUI opens and the design is loaded, type “run -all” at the Modelsim command line.&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=705</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=705"/>
		<updated>2013-01-17T00:19:14Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentations ==&lt;br /&gt;
*Week 1 [Insert Link]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
	<entry>
		<id>https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=704</id>
		<title>Team Cyc05</title>
		<link rel="alternate" type="text/html" href="https://wikis.ece.iastate.edu/cpre584/index.php?title=Team_Cyc05&amp;diff=704"/>
		<updated>2013-01-16T22:10:43Z</updated>

		<summary type="html">&lt;p&gt;Tyler07: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|+&#039;&#039;&#039;Team Cyc05&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;200px&amp;quot; | [[Image:Cy.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;background:#CD1014;&amp;quot; | Cyc05 Team Logo&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; align=&amp;quot;center&amp;quot; |&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; &lt;br /&gt;
|+&#039;&#039;Team Members&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| Osama G. Attia (ogamal)&lt;br /&gt;
|-&lt;br /&gt;
| Tyler Johnson (tyler07)&lt;br /&gt;
|-&lt;br /&gt;
| PengQing Xie (carterp)&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
* Osama G. Attia&lt;br /&gt;
* Tyler Johnson&lt;br /&gt;
* PengQing Xie&lt;br /&gt;
&lt;br /&gt;
== Weekly Presentation s==&lt;br /&gt;
*Week 1 [Insert Linnk]&lt;/div&gt;</summary>
		<author><name>Tyler07</name></author>
	</entry>
</feed>