Friday, May 22, 2020

Kill A Mockingbird Anticipation Guide - 1249 Words

To Kill a Mockingbird Anticipation guide 1. Have you ever stood up for something that wasn’t popular with everyone else? Do you find it difficult to stand up for what you believe of no one else agrees? Yes, we have all stood up for something that wasn’t popular with others. For example, in elementary school I would try to tell my classmates which bin to throw what garbage in but no one wanted to take the time to throw things on the right bin. I find it is difficult to stand up for things that others don’t believe because if you are not someone looked up to and your cause is unpopular, no one will follow Predictions: I can assume that in the story a character will have to choose to stand up for something that isn’t popular with others and will find it difficult to make them agree. 2. Have you ever embarked on a plan or game that was sure to fail? If so, why did you choose to go ahead with it? Yes, I have embarked upon a plan that was sure to fail in grade 8. The plan was for the intermediate division in my school to hide behind the portables after recess as an April fools prank on our teachers. We chose to go ahead with it anyway to see what the reactions of the teachers were. Predictions: With this question, it can be assumed that in To Kill a Mockingbird, one will find a character, or multiple characters will intend to win a no-win scenario, back down from it, or find a way to cheat the system. 3. Have you ever experienced prejudice? If so, under whatShow MoreRelatedEssay about The Narrator Debate: To Kill A Mockingbird1192 Words   |  5 Pagesauthors have taken this serious issue and turned it into great pieces of literature. Many of them have truly shown the seriousness of racism in society. Even though, criticism, as always, continues. Some critics have argued that Scout, in To Kill A Mockingbird, is an unreliable narrator. This is simply because Scout is a child. They suspect she is too innocent, naà ¯ve, and has an unbiased view. However, Scout as the narrator is a reliable choice because she allows the reader to concentrate more onRead MoreMovie Analysis : Kill A Mockingbird1571 Words   |  7 Pages If a book is retold in film format then it seems to follow logically that it now deviates from the original book, yet the same story is still being told and with To Kill a Mockingbird we see that through scene additions (or subtractions), details, and technique the film manages to preserve core points of the story for the audience. Translating the elements of the book that are solely for literature can prove tricky for screenwriters and though some manage to pull it off artistic liberty is a danger

Saturday, May 9, 2020

Letter of Admission to a Master Program for a Mechanical...

I take this opportunity to describe my educational background and career objectives that motivated me to pursue a master in Mechanical engineering. I completed my schooling creditably with an aggregate of 80% and my major subjects were Mathematics, Physics, Chemistry and Computer Science. Though I did my high school in rural area, I was an ardent and shrewd explorer of new technologies and mechanisms. This enthusiasm motivated me to go on special science exhibition camps to prudently utilize my skills in a wise manner. My project on â€Å"wind turbines†, earned me appreciations in the academic year in my high school tenure. This played a vital role in my academic career to choose Bachelor of Engineering degree in Mechanical Engineering from Apollo Engineering College affiliated to Anna University, Chennai. My undergraduate study exposed me to a wide range of subjects in the field of Mechanical Engineering. The curriculum enabled me a comprehensive exposure to a wide spectrum of courses namely Engineering Mechanics, Engineering Thermodynamics, Fluid Mechanics and Machinery, Strength of Materials, Manufacturing Technology, Automobile Engineering, Advanced IC Engines and hence these subjects exposed me to new ideas which are the crux of today’s engineering problems. To pace with the technological miniature, I have good knowledge about design software’s such as AutoCAD, SOLIDWORKS, PRO-E and ANSYS. During my undergraduate course, I visited many industries like Ford, Ashok LeylandShow MoreRelatedApplication Letter For Mba Degree Program1243 Words   |  5 Pages My purpose of writing this letter is to request you to grant me a study permit to pursue my further studies in MBA degree program with three months MBA foundation course in University Canada West, Vancouver, British Columbia. As far as my profile is concerned, I accomplished my first milestone of school (school leaving certificate) from New Horizon Higher Secondary School achieving 75.75% and joined Science stream in New Horizon College Butwal, Nepal and secured 52% aggregateRead MoreEnvironmental Hazards Due to Dumpyard3296 Words   |  14 Pagesthis campus with a lot of negative publicity and it has become a factor that students and their families actually consider seriously in their pros and cons list when they are filling out their choices/preferences. As a result, students who seek admission into BITS and get to know about the affects of the dump yard now prefer the Pilani and Goa campus than the one in Hyderabad, even if they are from Andhra Pradesh. This in turn negatively affects Brand BITS Hyderabad, which was being billed as theRead MoreProject Managment Case Studies214937 Words   |  860 PagesAll rights reserved. Published by John Wiley Sons, Inc., Hoboken, New Jersey Published simultaneo usly in Canada No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriateRead MoreMba Final Hr Recuitment Project10109 Words   |  41 PagesA SUMMER TRAINING PROJECT REPORT ON SOURCES PROCESS OF RECRUITMENT SELECTION AT HCL SUBMITTED IN THE PARTIAL FULFILLMENT FOR THE AWARD OF DEGREE OF MASTERS IN BUSINESS ADMINISTRATION EXECUTIVE SUMMARY Today, in every organisation personnel planning as an activity is necessary. It is an important part of an organisation. Human Resource Planning is a vital ingredient for the success of the organisation in the long run. The objectives of Human Resource Department are Human Resource PlanningRead MoreComparative Education13537 Words   |  55 Pagesorganized educational system, which is divided into primary, secondary and tertiary (college) education. Primary and secondary education is usually imparted at public schools although a strong network of private schools also exists. All educational programs in France are regulated by the Ministry of National Education. Schooling in France is mandatory as of age 6, the first year of primary school while secondary education consists of collà ¨ge for the first four years after primary school and the lycà ©eRead MoreManaging Information Technology (7th Edition)239873 Words   |  960 PagesStates of America. This publication is protected by Copyright, and permission should be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. To obtain permission(s) to use material from this work, please submit a written request to Pearson Education, Inc., Permissions Department, One Lake Street, Upper Saddle River, New Jersey 07458. Many ofRead MoreAccounting Information System Chapter 1137115 Words   |  549 Pagesability to repay loans. 3. Employees. The annual report gives the employees information such as a description of the companys pension plan and the employee stock incentive plan. This gives employees a base from which to compare their benefits program to those of other companies. Annual reports also provide employees with a year-end review of the results to which they have contributed during the year. In this sense, the annual report provides reinforcement and rewards. The annual report alsoRead MoreLogical Reasoning189930 Words   |  760 Pageslogical—to reason logically. It demonstrates the usefulness of logical reasoning as a means to making more effective decisions about your own life—decisions about what to believe and decisions about what to do. The chapter begins a systematic program of study of all the major topics regarding logical reasoning. Along the way, the book focuses on developing the following five skills: (1) writing logically, (2) detecting inconsistency and lack of clarity in a group of sentences, (3) spotting issuesRead MoreDeveloping Management Skills404131 Words   |  1617 PagesUnited States of America. This publication is protected by Copyright, and permission should be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. To obtain permission(s) to use material from this work, please submit a written request to Pearson Education, Inc., Permissions Department, One Lake Street, Upper Saddle River, New Jersey 07458. Many ofRead MoreMonsanto: Better Living Through Genetic Engineering96204 Words   |  385 Pagesorganisation is very determined to maintain excellent links with implant recipients and the surgeons and audiologists that work with them. For example, in 2002, 70 surgeons attended the Sydney facility through Cochlear’s ongoing visiting surgeon program. Cochlear has around 1000 staff representing 70 nations. It has an excellent training system for new staff. For example, in 2002, 43 new staff attended the Sydney headquarters for intensive training in the technology of implants and all aspects of

Wednesday, May 6, 2020

Fpga Based System Free Essays

Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 1 The Spartan-3E Tutorial 2: Introduction to using the PicoBlaze Microcontroller Version 1. 0 Author: Jasmine Banks  © 2012, Queensland University of Technology Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 2 Xilinx Spartan-3E Project Navigator Version 14. We will write a custom essay sample on Fpga Based System or any similar topic only for you Order Now 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 3 Acknowledgements Parts of this tutorial are based on an earlier version written for Project Navigator version 9. , written by Michael Bakker, Matthew Grace and Warwick Kilroy, as part of ENB345 – Advanced Design in 2008. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 4 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 5 Glossary ALU DOS FPGA JTAG LED KCPSM3 Arithmetic Logic Unit Disk Operating System Field Programmable Gate Array Joint Test Action Group Light Emitting Diode (K)Constant Coded Programmable State Machine – a very simple 8-bit microcontroller optimised for Spartan-3 devices [2]. Reduced Instruction Set Computing VHSIC Hardware Description Language Very High Speed Integrated Circuit RISC VHDL VHSIC Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 6 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 7 Table of Contents page Acknowledgements †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Glossary †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. List of Figures †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. List of Tables †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 1. 0 Introduction †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦ 1. 1 Design Functionality †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. 1. 2 Relevant Documentation .. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. 1. 3 Pre-requisite Knowledge †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. 1. 4 Scope †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦.. 2. 0 Equipment †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦. 3. 0 Background – The PicoBlaze Microcontroller †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 4. 0 Procedure Part 1 – PicoBlaze †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 4. 1 PicoBl aze Download †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 4. 2 Copy Files †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 4. 3 Assembly Language Code †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 4. Running the Assembler †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 0 Procedure Part 2 – Project Navigator †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã ¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 1 Startup †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦ 5. 2 Creating a New Project †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦. †¦. 5. 3 Adding Source Files †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 4 tutorial. vhd and kcpsm3. vhd – Observations †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. 5. 5 Adding a top_level Entity †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã ¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 6 Editing the top_level Entity †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 7 top_level. vhd – Code †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. 5. 8 Syntax Checking †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 9 Pin Assignment †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 10 Synthesize, Translate, Map and Place Route †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ . †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 5. 11 Download Design to Board †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 6. 0 Running the Program on the Spartan-3E Board †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 7. 0 Further Information †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 8. 0 References †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Appendix A – top_level. vhd †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚ ¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ 3 5 9 13 15 15 15 15 15 17 19 21 21 21 22 23 31 31 32 35 38 40 45 49 52 54 59 61 75 77 79 81 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 8 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 9 List of Figures page Figure 2. 1: Spartan-3E Development Board †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 3. 1: PicoBlaze components †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 3. 2: KCPSM3 component declaration †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 3. 3: Block Memory component declaration †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 4. 1: KCPSM3 files after unzipping †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 2: Simple PicoBlaze program . †¦. †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 3: Files in the working directory †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 4: KCPSM3 assembler files †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 4. 5: DOS Command Prompt window, after changing to working directory †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 6: DOS Command Prompt window, with KCPSM3 command typed in †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 4. 7: DOS Command Prompt window, after KCPSM3 successfully run †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 4. 8: Error message which appears if KCPSM3 is run on a 64-bit machine †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 9: DOSBox window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 4. 10: DOSBox window, with KCPSM3 command typed in †¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 4. 11: DOSBox window, after KCPSM3 successfully run †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 4. 12: Files in the working directory after KCPSM3 successfully run †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 1: Project Navigator Software Startup Window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 2: New Project Wizard, Create New Project Page †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã ¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 3: New Project Wizard, Project Settings Page †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 4: New Project Wizard, Project Summary Page †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 5: Adding a source file to the project †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 6: Add Source file selection window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 7: Adding Source Files window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 8: kcpsm3 a nd tutorial in the Sources window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. 7 19 20 20 21 22 22 23 23 24 24 25 26 27 28 29 31 32 33 34 35 36 36 37 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 10 Figure 5. 9: Source code for tutorial. vhd displayed in a tab †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 10: tutorial entity †¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 11: kcpsm3 entity . †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. . †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦. Figure 5. 12: Adding a source file to the project †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦ Figure 5. 3: New Source Wizard, Select Source Type †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 14: New Source Wizard, Define Module †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦ Figure 5. 15: New Source Wizard, Summary †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 16: top_level in the Sources window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 17: top_level. vhd, as displayed in Project Navigator, before editing †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 18(a): Architecture of top_level. vhd, part 1 †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 18(b): Architecture of top_level. vhd, part 2 †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦.. Figure 5. 19: top_level in the Sources window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 20: Component declarations †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 21: Signal declarations †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 22: Component instantiations †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦ Figure 5. 23: Input ports †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 24: Output ports †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 5: Portion of Project Navigator screen with Synthesize – XST expanded †¦Ã¢â‚¬ ¦.. †¦.. Figure 5. 26: A green tick next to Check Syntax shows that no errors were found †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 27: Example where an error was purposely introduced †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 28: Portion of Project Navigator screen, with User Constraints expanded †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 29: Dialog Box asking if you wish to create an Implementation Constraint File . †¦. Figure 5. 30: Initial appearance of PlanAhead window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 31: I/O Ports displayed in a separate window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. 38 38 39 40 41 42 43 44 45 46 47 48 49 50 50 51 51 52 53 53 55 55 56 56 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 11 Figure 5. 32: I/O Ports window with individual ports expanded †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦. Figure 5. 33: I/O Ports window with values filled in †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 34: Portion of Project Navigator screen, with Implement Design expanded †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 35: Portion of Project Navigator screen, after Translate, Map and Place Route have successfully been run †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦.. Figure 5. 36: Portion of Project Navigator screen, with Implement Design expanded †¦.. †¦Ã¢â‚¬ ¦ Figure 5. 7: Portion of Project Navigator screen, after Generate Programming File has successfully been run †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â ‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦. Figure 5. 38: The initial iMPACT window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦.. Figure 5. 39: iMPACT window, after double-clicking on Boundary Scan †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. Figure 5. 40: iMPACT window, showing Initialize Chain selected †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 41: iMPACT window, assign configuration files †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦.. Figure 5. 42: iMPACT window, assigning the configuration file for the xc3e500e †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦.. Figure 5. 43: iMPACT window, dialog box asking if we wish to attach an SPI or BPI PROM . Figure 5. 4: : iMPACT window, bypassing the xcf04s †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 45: iMPACT window, bypassing the xc2c64a †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 46: iMPACT window, Device Programming Properties dialog box †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 5. 47: iMPACT window, showing the device chain †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. Figure 5. 48: iMPACT window, options which appear when right clicking on the xc3s500e .. Figure 5. 49: iMPACT window, after the program has been successfully downloaded to the Spartan-3E board †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ Figure 6. 1: The Spartan-3E board with the program running †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦ .. 57 58 59 60 61 2 63 64 65 66 67 68 69 70 71 72 72 73 75 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 12 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 13 List of Tables Page Table 5. 1: Input/output ports of the top_level entity . †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦.. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦ Table 5. 2: Values to enter in the I/O Ports window †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦Ã¢â‚¬ ¦ †¦Ã¢â‚¬ ¦. †¦Ã¢â‚¬ ¦ 54 57 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 14 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 15 1. 0 Introduction This tutorial is designed to help new users become familiar with using the PicoBlaze microcontroller with the Spartan-3E board. The tutorial gives a brief introduction to the PicoBlaze microcontroller, and then steps through the following: †¢ †¢ †¢ †¢ Writing a small PicoBlaze assembly language (. psm) file, and stepping through the process of assembling the . psm file using KCPSM3. Writing a top level VHDL module to connect the PicoBlaze microcontroller (KCPSM3 component) and the program ROM, and to connect the required input and output ports. Connecting the top level module inputs and outputs to the switches, buttons and LEDs on the Spartan-3E board. Downloading the program to the Spartan-3E board using the Project Navigator software. 1. 1 Design Functionality The code written in this tutorial reads the values of the four switches and the four push buttons, and displays the current values on the eight LEDS. 1. 2 Relevant Documentation Before commencing this tutorial, it would be helpful to download the Spartan-3E FPGA Starter Kit Board User Guide [1], and the PicoBlaze 8-bit Embedded Microcontroller User Guide [2]. 1. Pre-requisite Knowledge Before commencing this tutorial, the user should work through â€Å"The Spartan-3E Tutorial 1: Introduction to FGPA Programming† [3]. 1. 4 Scope This tutorial is designed to help the user who is just starting to â€Å"get into† using the PicoBlaze with the Spartan-3E. It steps through the process of creating a very simple PicoBlaze program, running the assembler, putting the VHDL components together in Project Navigator, and downloading the final program to the board. It is not designed to be a tutorial on VHDL syntax or to provide detailed information on the PicoBlaze. For help with VHDL, the user can consult with a number of textbooks on the subject, such as [4,5], or find help online. The book by Chu [6] is also a useful reference for the Spartan-3 with many useful examples. Reference designs for the Spartan-3E can also be found here [7]. For detailed information about the features and instruction set of the PicoBlaze, the user can consult the documentation in [2,8]. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 16 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 17 2. 0 Equipment The following are required to work through this tutorial: †¢ The Xilinx ISE Project Navigator software. Version 14. 3 was used in this tutorial, but older versions of the software can be used. The software can be downloaded with a free WebPack license from the Xilinx website, http://www. xilinx. com/. The user will need to register and log in. The Spartan-3E Starter Kit, including the Spartan-3E development board, power cable and USB cable for PC connection. The Spartan-3E development board is shown in Figure 2. 1. The Picoblaze 8-bit Microcontroller software. The software can be downloaded for free from the Xilinx website, http://www. xilinx. com/. Again the user will need to register and log in. If a 64-bit machine is being used, software which can run 32-bit DOS programs, such as DOSBox, will be needed to run the KCPSM3 executable. DOSBox can be downloaded from http://www. dosbox. com/. †¢ †¢ †¢ Power JTAG ON/OFF Reset Button FPGA USB LCD LEDs Push Buttons Figure 2. 1: Spartan-3E Development Board. SW0-3 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 18 . 0 Background – The PicoBlaze Micocontroller The PicoBlaze is an 8-bit RISC microcontroller which is specifically designed and optimized for the Spartan-3 family. One of its main advantages is its small size, requiring only 96 FPGA slices. It is provided as a free, source-level VHDL file with royalty-free re-use within Xilinx FPGAs [2]. Figure 3. 1 shows that the PicoBlaze consists of two components. The KCPSM3 component provides the ALU, registers, scratchpad RAM etc. The Block Memory (Program) component stores the instructions to be executed. This typically consists of a Block RAM, of 1024 bytes in size. Figure 3. 1: PicoBlaze components [8]. The basic design process using the PicoBlaze follows the steps below: 1. A PicoBlaze program is written in assembly language. This file is given the extension . psm. 2. The KCPSM3 assembler is run on the . psm file, and a VHDL file (extension . vhd) which embeds the instructions in the Block Memory component, is output. The name of the . vhd file will be derived from the name of the . psm file, i. e. , if the . psm file is myprog. psm, then the . vhd file will be myprog. vhd. 3. The VHDL code for the Block Memory and KCPSM3 modules is loaded into Project Navigator. Further VHDL code will need to be written to connect the two modules and interface to the outside world. 4. The project is compiled using the Project Navigator Software, and ultimately downloaded to the Spartan-3E board (or other target hardware). Figures 3. 2 and 3. 3 show the VHDL component declarations for the KCPSM3 and Block Memory respectively. Note that the name of the Block Memory component is derived from the name of the original . psm file, i. e. , if the . psm file was myprog. psm, the Block Memory component will be called myprog. Xilinx Spartan-3E Project Navigator Version 14. Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 19 component kcpsm3 port (address instruction port_id write_strobe out_port read_strobe in_port interrupt interrupt_ack reset clk end component; : : : : : : : : : : : out std_logic_vector(9 downto 0); in std_logic_vector(17 downto 0); out std_logic_vector(7 downto 0); out std_logic; out std_logic_vector(7 downto 0); out std_logic; in st d_logic_vector(7 downto 0); in std_logic; out std_logic; in std_logic; in std_logic); Figure 3. 2: KCPSM3 component declaration. Name of component derived from name of . psm file omponent myprog port (address : in std_logic_vector(9 downto 0); instruction : out std_logic_vector(17 downto 0); clk : in std_logic); end component; Figure 3. 3: Block Memory component declarations. In addition, it is possible to download a new program into the Block Memory, using the JTAG port on the Spartan-3E board. This can provide a convenient means to update the program without having to recompile the VHDL code in Project Navigator. This is not covered by this introductory tutorial, and the user can refer to documentation such as [3] for more information. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 20 4. 0 Procedure Part 1 – PicoBlaze 4. 1 PicoBlaze Download 1. Download the file KCPSM3. zip from http://www. xilinx. com/. The version of the software for the Spartan-3 family should be chosen. 2. Unzip the file. After unzipping, the files should appear as shown in Figure 4. 1. Figure 4. 1: KCPSM3 files after unzipping. The file KCPSM3_Manual. pdf is listed as reference [8] in this tutorial. 4. 2 Copy Files 1. Create a directory called tutorial_2 in an appropriate location. This will be the working directory for the rest of this tutorial. 2. Copy the following files in the Assembler directory into tutorial_2: †¢ †¢ †¢ †¢ KCPSM3. EXE ROM_form. coe ROM_form. v ROM_form. vhd 3. Copy the following file in the VHDL directory into tutorial_2: †¢ kcpsm3. vhd Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 21 4. 3 Assembly Language Code 1. Open a text editor (for example, Notepad or Wordpad), and enter the text shown in Figure 4. 2. The text consists of a very simple program written in the KCPSM3 assembly language. The program runs in an infinite loop, reading the contents of an input port at address 00h (connected to the switches) into a register, and writing the contents of this register to an output port at address 80h (connected to the LEDs). Characters which appear after a â€Å";† in each line are comments. ; ; ; ; ; Simple loop that puts contents of input register into the output register switches DSIN $00 LEDS DSOUT $80 ; read switches into register s0 ; write contents of s0 to output port 80 – leds. ; loop back to start start: INPUT s0, 00 OUTPUT s0, 80 JUMP start Figure 4. 2: Simple PicoBlaze program. . Save your file to tutorial. psm, in the tutorial_2 directory. If using Notepad, be careful not to save the file as tutorial. psm. txt. The name of the file should be restricted to 8 characters. The tutorial_2 directory should now contain the files shown in Figure 4. 3. Figure 4. 3: Files in the tutorial_2 working directory. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 22 4. 4 Running the Assembler As shown in Figure 4. 4, the assembler takes the . psm file as input, as well as three Block RAM initialisation templates. Fifteen different output files are produced. In this tutorial, we will be using the . vhd output file. Figure 4. 4: KCPSM3 assembler files [2]. The assembler is a DOS executable file, KCPSM3. exe, which can be run in a DOS Command Prompt window. 4. 4. 1 32-bit Operating Systems 1. Open a DOS Command Prompt window by selecting: StartAll ProgramsAccessoriesCommand Prompt 2. Use the cd command to change into the tutorial_2 working directory, as shown in Figure 4. 5. Figure 4. 5: DOS Command Prompt window, after changing to working directory. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 23 3. Now type the command KCPSM3 tutorial. psm, as shown in Figure 4. 6. Figure 4. 6: DOS Command Prompt window, with KCPSM3 command typed in. After entering the command KCPSM3 tutorial. psm, numerous messages should fly past on the screen, ending with â€Å"KCPSM3 successful. KCPSM3 complete†, as shown in Figure 4. 7. After the assembler has successfully run, the working directory should contain many more files, as shown in Figure 4. 12. Figure 4. 7: DOS Command Prompt window, after KCPSM3 successfully run. 4. Type exit to close the Command Prompt window. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 24 4. 4. 2 64-bit Operating Systems The KCPSM3 executable will only work on 32-bit operating systems. If you are using a 64-bit machine and attempt to run KCPMS3 in a DOS Command Prompt window, the error message shown in Figure 4. 8 will appear. Figure 4. 8: Error message which appears if it is attempted to run KCPSM3 on a 64-bit machine. One way to work around this and run KCPSM3 is to use the DOSbox software, which can be downloaded from http://www. dosbox. com/. 1. Download and run DOSBox. 2. Mount the working directory and change into this directory. When DOSbox is started up, a command window which resembles the DOS Command Prompt window appears. However, it is first necessary to mount the working directory to a drive letter before being able to enter this directory and run programs. This is done with the mount command: mount Figure 4. 9 shows the commands entered to mount and change into the working directory. In this case, the working directory is mounted as drive letter c. The command c: is then used to change into this directory. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 25 Figure 4. 9: DOSBox window, commands entered to mount and change into the working directory. 3. Now type the command KCPSM3 tutorial. psm, as shown in Figure 4. 10. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 26 Figure 4. 10: DOSBox window, with KCPSM3 command typed in. After entering the command KCPSM3 tutorial. psm, numerous messages should fly past on the screen, ending with â€Å"KCPSM3 successful. KCPSM3 complete†, as shown in Figure 4. 11. After the assembler has successfully run, the working directory should contain many more files, as shown in Figure 4. 12. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 27 Figure 4. 11: DOSBox window, after KCPSM3 successfully run. 4. Type exit to close DOSBox. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 28 Figure 4. 12: Files in the working directory after KCPSM3 successfully run. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 9 Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 30 5. 0 Procedure Part 2 – Project Navigator 5. 1 Startup Start the Project Navigator software by selecting: StartAll ProgramsXILINX Design ToolsXilinx ISE Design Suite 14. 3ISE Design Tools32 bit Project Navigator or StartAll Program sXILINX Design ToolsXilinx ISE Design Suite 14. 3ISE Design Tools64 bit Project Navigator depending on your system. The Xilinx Project Navigator software should start. The initial window which appears on startup should appear as shown in Figure 5. . Figure 5. 1: Project Navigator Software Startup Window. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 31 5. 2 Creating a New Project 1. Select FileNew Project. The New Project Wizard will appear. 2. Type tutorial_2 in the Name: field. 3. Choose Location: and Working Directory: as the tutorial_2 working directory. 4. Verify that Top-level source type: is selected as HDL. 5. The properties should now be set as shown in Figure 5. 2. Click Next to move to the Project Settings page. Figure 5. 2: New Project Wizard, Create New Project Page. 6. Fill in the properties as follows: †¢ †¢ †¢ †¢ Evaluation Development Board: None Specified or Spartan-3E Starter Board Product Category: All Family: Spartan3E Device: XC3S500E Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller †¢ †¢ †¢ †¢ †¢ †¢ †¢ †¢ †¢ †¢ 32 Package: FG320 Speed Grade: -4 Top-Level Source Type: HDL Synthesis Tool: XST (VHDL/Verilog) Simulator: ISim (VHDL/Verilog) Preferred Language: VHDL Property Specification in Project File: Store All Values Manual Compile Order: unchecked VHDL Source Analysis Standard: VHDL-93 Enable Message Filtering: unchecked Note if you choose Evaluation Development Board as Spartan-3E Started Board, properties from Product Category through to Speed will be filled in automatically. However, you must make sure that Preferred Language is set to VHDL. The properties should now be filled in as shown in Figure 5. 3. Figure 5. 3: New Project Wizard, Project Settings Page. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 33 7. Click Next to move to the Project Summary page, which will appear as shown in Figure 5. 4. Figure 5. 4: New Project Wizard, Project Summary Page. 8. Click Finish to exit the New Project Wizard. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 34 5. 3 Adding Source Files 1. Select ProjectAdd Source as shown in Figure 5. 5. A window will appear allowing you to choose one or more files. Figure 5. 5: Adding a source file to the project. 2. Select TUTORIAL. VHD and kcpsm3. vhd as shown in Figure 5. 6. Both files can be selected at once by clicking on the first filename, holding down the CTRL key and clicking the second filename. Alternatively, one file can be selected and steps 1-3 repeated for the second file. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 35 Figure 5. 6: Add Source file selection window. 3. The Adding Source Files window will now appear as shown in Figure 5. 7, showing the two files selected to be added to the project. Click OK. Figure 5. 7: Adding Source Files window. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 36 As shown in Figure 5. 8, kcpsm3 and tutorial will now appear in the Sources window. Doubleclicking on either filename in the Sources window will display the file in a tab. Sources Window Figure 5. 8: kcpsm3 and tutorial in the Sources window. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 37 5. 4 tutorial. vhd and kcpsm3. vhd – Observations 1. Double-click on tutorial in the Sources window. This will display the source code in a tab, as shown in Figure 5. 9. It can be seen that Project Navigator colour codes the text of VDHL files, to make them easier to read. Comment lines, which start with â€Å"- -† are displayed in green. Reserved words of the VHDL language are displayed in blue, while VHDL types are displayed in red. Everything else is left as black. tutorial in Sources window Source code for tutorial. vhd appears in this tab Figure 5. 9: Source code for tutorial. vhd is displayed in a tab. A close up of the code for the tutorial entity is shown in Figure 4. 10. Note that this corresponds to the Block Memory (Program) component of Figures 3. 1 and 3. 3. Figure 5. 10: tutorial entity. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 38 2. Double-click on kcpsm3 in the Sources window, to display the source code for kcpsm3. vhd. A close up of the code for the kspsm3 entity is shown in Figure 5. 11. Note that this corresponds to the KCPSM3 block of Figures 3. 1 and 3. 2. Figure 5. 11: kcpsm3 entity. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 39 5. 5 Adding a top_level Entity VHDL code still needs to be written to tie together the kcpsm3 and tutorial entities, and also to interface with the Spartan-3E board. We will create a file called top_level. vhd for this purpose. 1. Select ProjectNew Source as shown in Figure 5. 12. The New Source Wizard will appear. Figure 5. 2: Adding a source file to the project. 2. Select Source Type as VHDL Module. 3. Enter the file name as top_level, and enter the location of the file (same as the project location entered earlier. 4. Verify that the Add to project box is checked. shown in Figure 5. 13. The New Source Wizard should now appear as Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Intro duction to Using the PicoBlaze Microcontroller 40 Figure 5. 13: New Source Wizard, Select Source Type. 5. Click Next to go to the Define Module window. 6. Define the ports (inputs and outputs of the design) by entering the information as shown in Figure 5. 14. These ports are described as follows: †¢ †¢ †¢ switches will be an input consisting of 8 bits, and will be connected with the 4 slide switches and 4 push buttons on the Spartan-3E. clk will be an input consisting of 1 bit, and will be connected to the clock input. LEDs will be an output consisting of 8 bits, and will be connected with the LEDs on the Spartan-3E. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 41 Figure 5. 14: New Source Wizard, Define Module. 7. Click Next to move to the Summary page, as shown in Figure 5. 15. Xilinx Spartan-3E Project Navigator Version 14. Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 42 Figure 5. 15: New Source Wizard, Summary. 9. Click Finish to exit the New Source Wizard. As shown in Figure 5. 16, top_level will now appear in the Sources window. Double-clicking on top_level in the Sources window will display the file, top_level. vhd in a tab. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 43 top_level in Sources window Figure 5. 16: top_level in the Sources window. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 4 5. 6 Editing the top_level Entity 1. Double-click on top_level in the Sources window to display the file, top_level. vhd in a tab. The code for top_level. vhd is shown in Figure 5. 17. entity architecture Figure 5. 17: top_level. vhd, as displayed in Project Navigator, before editing. The code in Figure 5. 17 contains an entity and an architecture section. The entity section defines the inputs and outputs of this hardware block. In this case these have been automatically added using the New Source Wizard. The architecture section still needs to be written for this module. 2. Replace the architecture block in Figure 5. 7 with the code in Figure 5. 18(a) and (b). This code is a trimmed do wn version of the Initial Design for the Spartan-3E FPGA Starter Kit Board (the original design shipped with the board), downloaded from [7]. For reference the complete code for top_level. vhd is listed in Appendix A. Note that where VDHL code is listed in this tutorial, the same colour coding as Project Navigator is used, to assist with readability. 3. Save the file by selecting File Save from the main menu. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 45 rchitecture Behavioral of top_level is — declaration of KCPSM3 (always use this declaration to call — up PicoBlaze core) component kcpsm3 port (address : out std_logic_vector(9 downto 0); instruction : in std_logic_vector(17 downto 0); port_id : out std_logic_vector(7 downto 0); write_strobe : out std_logic; out_port : out std_logic_vector(7 downto 0); read_strobe : out std_logic; in_port : in std_logic_vector(7 downto 0); interrupt : in std_logic; interrupt_ack : out std_logic; reset : in std_logic; clk : in std_logic); end component; ————————————————————————– declaration of program memory (here you will specify the entity name — as your . psm prefix name) component tutorial port (address : in std_logic_vector(9 downto 0); instruction : out std_logic_vector(17 downto 0); clk : in std_logic); end component; ————————————————————————– Signals used to connect PicoBlaze core to program memory and I/O logic signal address : std_logic_vector(9 downto 0); signal instruction : std_logic_vector(17 downto 0); signal port_id : std_logic_vector(7 downto ); signal out_port : std_logic_vec tor(7 downto 0); signal in_port : std_logic_vector(7 downto 0); signal write_strobe : std_logic; signal read_strobe : std_logic; signal interrupt_ack : std_logic; signal reset : std_logic; — the following input is assigned an inactive value since it is — unused in this example signal interrupt : std_logic :=’0†²; ————————————————————————– Start of circuit description begin — Instantiating the PicoBlaze core processor: kcpsm3 port map (address = address, instruction = instruction, port_id = port_id, write_strobe = write_strobe, Figure 5. 18(a): Architecture of top_level. vhd, part 1. Xilinx Spartan-3E Project Navigator Version 14. 3 Tutorial 2: Introduction to Using the PicoBlaze Microcontroller 46 ut_port = out_port, read_strobe = read_strobe, in_port = in_port, interrupt = inte rrupt, interrupt_ack = interrupt_ack, reset = reset, clk = clk); — Instantiating the program memory program: tutorial port map (address = address, instruction = instruction, clk = clk); — Connect I/O of PicoBlaze —————————————————————————- KCPSM3 Define input ports ————————————————————————- The inputs connect via a pipelined multiplexer input_ports: process(clk) begin if clk’event and clk=’1†² then case port_id(1 downto 0) is — read simple toggle switches and buttons at address 00 hex when â€Å"00† = in_port instruction, port_id = port_id, write_strobe = write_strobe, out_port = out_port, read_strob e = read_strobe, in_port = in_port, interrupt = interrupt, interrupt_ack = interrupt_ack, reset = reset, clk = clk); — Instantiating the How to cite Fpga Based System, Papers