资源预览内容
第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
第9页 / 共19页
第10页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
CS4101 嵌入式系統概論 Design and Development ng Recap tMore and more physical things will be augmented or embedded with computing lThings become “smarter” lComputing becomes ubiquitous tAn embedded system is a system that is embedded with programmable computers for specific applications of that system tWhy embedded systems? lFaster, more flexible development at lower cost lMore complex functionalities ng Suppose You Have a Product Idea tTo develop a device that can record, for each day, the number of stairs that the user has climbed up or down lFrom this number, we can then calculate the amount of CO2 saved and calories burned lLet us call this device stair counter How to start from here? ng Typical Design Flow requirements specification architecture component development system integration Top-down design Bottom-up design Real design often iterative ng Requirements tPlain language description of what the user wants and expects to get le.g. to develop a device that can record, for each day, the number of stairs that the user has climbed up or down lDescribe how the end product is used by the user tMay be developed in several ways: ltalking directly to customers ltalking to marketing representatives lproviding prototypes to users for comment requirements specification architecture component development system integration ng Requirements tOften need to know target customers and business model lStair counter as an add-on of cell phone lStair counter as a consumer product lStair counter as a gift l ng Requirements tFunctional requirements: Internals as a black box and describe only the outputs as a function of input; lShow number of stairs climbed up or down lShow amount of CO2 saved lDo not count in other cases tNon-functional requirements: lPerformance, reliability, etc. lSize, weight, etc. lPower consumption lCost l Describe “WHAT”, not “HOW” ng Requirements Form ng Specification tMore precise, usually quantitative description of the system: lShould not imply a particular architecture lList assumptions le.g., update screen 0.25 sec after each step, error rate 95%, cost $300 tMay include functional and non-functional elements tMay be executable or may be in mathematical form for proofs le.g. UML (Unified Modeling Language) requirements specification architecture component development system integration ng Architecture Design tWhat major components satisfy the specification? HOW lNeed to know what are available tHardware components: lCPUs, peripherals, etc. le.g. MSP430 CPU, 3-axis accelerometer tSoftware components: lMajor programs and their operations le.g. no OS, accelerometer driver, LCD driver tMust take into account functional and non- functional specifications requirements specification architecture component development system integration ng Design Considerations tEnvironment which the embedded system is in tExternal and internal stimulus sources that interact with the embedded system I/O lActions and events caused by stimulus lElements of the embedded system that could be affected by the stimulus tDesired system responses to the stimulus, which reflects one or more system requirements algorithm/workflow tHow the system responses can be measures ng Component Development tActual implementation of individual hardware and software components lMust spend time architecting the system before you start coding tSome components are ready-made, some can be modified from existing designs, others are to be designed from scratch le.g. MSP430 CPU, 3-axis accelerometer tGood surveys help requirements specification architecture component development system integration ng System Integration tPut together the components lMany bugs appear only at this stage lRequire good interface definition from the start tHave a plan for integrating components to uncover bugs quickly, test as much functionality as early as possible test and verification requirements specification architecture component development system integration ng System Development tNow that you have better idea of the requirements, specifications, and architecture of the stair counter tHow to proceed to develop the components and integrate the system? But, lReal hardware? Programming environment? requirements specification architecture component development system integration ng Development Environment tHost: a computer running programming tools for development tTarget: the HW on which code will run tAfter program is written, compiled, assembled and linked, it is transferred to the target Host systemTarget system X86 MSP430 ng What If Real HW Not Available? tDevelopment board: lBefore real hardware is built, software can be developed and tested using development boards lDevelopment boards usually have the same CPU as the end product and provide many IO peripherals for the developed software to use as if it were running on the real end product tTools for program development lIntegrated Development Environment (IDE): cross compiler
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号