2022/01/30 |
Back |
開講学期 /Semester |
2021年度/Academic Year 前期 /First Semester |
---|---|
対象学年 /Course for; |
3rd year |
単位数 /Credits |
3.0 |
責任者 /Coordinator |
SAITO Hiroshi |
担当教員名 /Instructor |
SAITO Hiroshi, KOHIRA Yukihide, JING Lei |
推奨トラック /Recommended track |
- |
履修規程上の先修条件 /Prerequisites |
- |
使用言語 /Language |
- |
更新日/Last updated on | 2021/01/18 |
---|---|
授業の概要 /Course outline |
(Prof. Jing, L. is in charge of the ICTG class.) Raspberry Pi is a reasonable educational board. Using Raspberry Pi, we can develop programs, control sensors and actuators,and realize deep machine learning under Linux based OS. Therefore, we can understand a computer system with hardware and software. Raspberry Pi is one of well used materials in world wide to understand computer systems in world wide. |
授業の目的と到達目標 /Objectives and attainment goals |
The purpose of this exercise is to understand computer systems using Raspberry Pi through the following exercises. 1. Understanding the architecture of Raspberry Pi and settings of Raspbian 2. Programming using Python 3. Control of sensors and actuators using GPIO and I2C 4. Capturing of images using a camera In the last half of the exercise, students are required to implement their idea using Raspberry Pi. |
授業スケジュール /Class schedule |
Basic 1 Introduction of this exercise and the architecture of Raspberry Pi (Exercise 1) Installation of Raspbian OS, Internet connection, setting of Raspbian 2 Raspbian and Programming using Python (Exercise 2) Installation of applications and use of a browser/editor, and programming using Python Applications 3-4 Control of sensors and actuators (Exercise 3 and 4) Control of sensors and actuators using GPIO and I2C 5 Capturing of images using a camera (Exercise 5) Capturing of images using a camera 6-7 WebIOPi (Exercise 6) Control from a smart phone using WebIOPi Advanced 8 About individual work and presentation using Raspberry Pi (Exercise 7) Implementation of your idea using Raspberry Pi 9 - 12 (Exercise 7) Implementation of your idea using Raspberry Pi 13, 14 Presentation Each student present his/her work using slides (3 min) After all presentations, each student demonstrates his/her work at his/her desk |
教科書 /Textbook(s) |
None |
成績評価の方法・基準 /Grading method/criteria |
Exercise 1 - 6 42% Exercise 7 58% |
履修上の留意点 /Note for course registration |
To understand computer systems through this course, all of exercises are carried out individually. |
参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
Japanese textbook 林、”ラズベリーパイで遊ぼう!”、ラトルズ |
Back |
開講学期 /Semester |
2021年度/Academic Year 後期 /Second Semester |
---|---|
対象学年 /Course for; |
3rd year |
単位数 /Credits |
3.0 |
責任者 /Coordinator |
TOMIOKA Yoichi |
担当教員名 /Instructor |
TOMIOKA Yoichi, NAKASATO Naohito, OKUYAMA Yuichi |
推奨トラック /Recommended track |
- |
履修規程上の先修条件 /Prerequisites |
- |
使用言語 /Language |
- |
更新日/Last updated on | 2021/01/28 |
---|---|
授業の概要 /Course outline |
(Prof. Okuyama is in charge of ICTG class.) In this exercise, students will study embedded system development using Field-Programmable Gate Array (FPGA). An FPGA is an integrated circuit that allows users to change logic and wiring freely, and it is possible to immediately implement the designed circuit on the FPGA and verify it on site. Compared with Application Specific Integrated Circuit (ASIC) in which logic and wiring are fixed after manufacture, it is known that FPGA can reduce engineering cost and development period. In embedded systems, microcomputers are often used, but for many applications such as speech processing, image processing, and so on, it may not be possible to achieve sufficient speed with microcomputers alone. In such a case, real-time processing is realized while maintaining low power consumption by implementing a dedicated circuit for large-scale parallel processing of the target application on the FPGA. For this reason, FPGA is an indispensable device along with microcomputers in today's embedded system development. In this exercise, students will learn the embedded system development through that combines software and hardware with subjects of switch/LED control and image processing. |
授業の目的と到達目標 /Objectives and attainment goals |
1. Students will deepen their understanding of computer systems by reviewing the contents of logic circuits design, advanced logic circuits design, computer architectures, programming C, and so on. 2. Students will acquire practical system design knowledge and skills through design and FPGA implementation, and verification of peripheral control modules, image processing modules, and interconnect. |
授業スケジュール /Class schedule |
Ex. 1. Tutorial Students will study how to use Quartus Prime and Nios II EDS. Ex. 2-4. Programming for embedded systems Students will study software development of an embedded system using Nios II EDS. Ex. 5-7. Embedded system design Students will study system design using Nios II processor and peripheral modules on Platform Designer of Quartus Prime. Ex. 8-10. Development of Image Processing System using Nios II processor Students will construct an image processing system such as linear filtering using Nios II processor. Ex. 11-14. Advanced exercise Students will select an advanced exercise of either software design or circuit design. |
教科書 /Textbook(s) |
Not assigned |
成績評価の方法・基準 /Grading method/criteria |
Report: 100% |
履修上の留意点 /Note for course registration |
Related courses: Logic Circuit Design, Advanced Logic Circuit Design, Computer Architecture, C Programming |
参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
圓山 宗智,完全版 FPGA電子工作オールインワン・キット (トライアルシリーズ) 単行本,CQ出版 小林 優,FPGAボードで学ぶ組込みシステム開発入門 [Intel FPGA編] 改定2版,技術評論社 |
Back |
開講学期 /Semester |
2021年度/Academic Year 前期 /First Semester |
---|---|
対象学年 /Course for; |
3rd year |
単位数 /Credits |
3.0 |
責任者 /Coordinator |
WATANOBE Yutaka |
担当教員名 /Instructor |
WATANOBE Yutaka, NISHIDATE Yohei, ZHU Xin, MARKOV Konstantin |
推奨トラック /Recommended track |
- |
履修規程上の先修条件 /Prerequisites |
- |
使用言語 /Language |
- |
更新日/Last updated on | 2021/01/29 |
---|---|
授業の概要 /Course outline |
Developing software is an activity that involves, understanding of requirements, design of computational structures and behavior, and implementation of the designs. It requires practical application and integration of various knowledge/skills including but not limited to programming and software engineering. In Integrated Exercise for Software, 2 to 3 students work in teams to learn practical software development by developing a software that solves a given problem (project theme). Project themes will be decided at beginning of the course, development is performed incrementally in phases of 3 weeks each, and results are reported at an interim review and a final review session. Teams working on same project theme will compete on developing a better software product. The teams are required to plan and manage their development using project tools to provide high transparency of their activity. For Integrated Exercise for Software I, software that integrates contents covered in multiple 1st-2nd year courses will be developed. Themes will emphasize data computation software with a focus on selecting appropriate data structures and algorithms and improving their efficiency. |
授業の目的と到達目標 /Objectives and attainment goals |
1. Understand software requirements and define corresponding models 2. Create a software design that satisfies functional and quality requirements 3. Setup a suitable development environment and effectively manage development activities 4. Design and perform sufficient tests to verify software 5. Validate software by checking that it meets the needs of stakeholders |
授業スケジュール /Class schedule |
In each class (3 periods), 1. Progress report by each team and feedback by lecturers 2. Short lecture on the week’s activity by lecturer 3. Team meeting and development activity will be performed. Week 1: Team kickoff, Setup development environment Form teams, divide roles among members, prepare development environment. Week 2: Task definition, create project plan Receive development task, analyze requirements, and create an incremental development plan. Week 3: Phase 1 Requirements definition Select and review requirements to implement in first phase and begin design. Week 4: Phase 1 Implementation and design Refine requirements and create designs and perform implementation. Week 5: Phase 1 Demo Review current software prototype and adjust requirements, design, and implementation plan. Week 6: Phase 2 Requirements definition Select and review requirements to implement and begin design. Week 7: Phase 2 Design and implementation Refine requirements and create designs and perform implementation. Week 8: Phase 2 Demo (Mid-term review) Review current software prototype and adjust requirements, design, and implementation plan. Week 9: Phase 3 Requirements definition Select and review requirements to implement and begin design. Week 10: Phase 3 Design and implementation Refine requirements and create designs and perform implementation. Week 11: Phase 3 Demo Review current software prototype and plan for testing and final review. Week 12: Test Planning Create test plan and begin tests. Week 13: Test and Improvement Iterate test and fix cycle and improve quality. Week 14: Final Review Review software product and test results to deliver accept/reject decision. |
教科書 /Textbook(s) |
Handouts will be provided if necessary |
成績評価の方法・基準 /Grading method/criteria |
Performance will be assessed by the following items. 1. Presentation at each review (interim and final) 25% 2. Software product (documents and software) 40% 3. Final exam (individual interview) 25% 4. Participation in class activities and attitude 10% * Assessment of software product will be based on fulfillment of requirements (implemented functions and precision), performance, creativity, and innovation. * Contribution of each student will be checked in each review and development records. * Form and content of final examination will be announced at the beginning of the course. |
履修上の留意点 /Note for course registration |
* This course is based on practical activities that requires proactive participation by the students. * Due to the nature of activity, necessary knowledge/skills vary depending on the theme. Students are requested to self-study (individually or in teams, outside of classroom hours) any knowledge or skills as required to complete the project. * The intended programming language is C or Java. Use of other programming languages is possible with prior permission from the lecturer. |
参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
Prof. Zhu has working experiences. He has collaborated with some corporations in the research and development of algorithms for the software of signal and image processing since 2003. In 2003-2016, he developed algorithms for ECG signal processing with Nihon Kohden and ECG Technology Corp. In 2013-2015, he developed algorithms for sleep monitoring with Asahi Denshi Corp. Now he is developing image processing algorithms for endoscopy with Fujifilm Corp. The course coordinator Yutaka Watanobe has practical work experience. Now he is collaborating with Givery Inc. to develop the programming skill check tool which can be useful for personnel assessment, training and education. He has provided a number of problems and related test data as one of main contents. Based on his experience, he can teach a wide range of algorithms and data structures. |
Back |
開講学期 /Semester |
2021年度/Academic Year 後期 /Second Semester |
---|---|
対象学年 /Course for; |
3rd year |
単位数 /Credits |
3.0 |
責任者 /Coordinator |
YOSHIOKA Rentaro |
担当教員名 /Instructor |
YOSHIOKA Rentaro, FAYOLLE Pierre-Alain, MOZGOVOY Maxim, RAGE Uday Kiran |
推奨トラック /Recommended track |
- |
履修規程上の先修条件 /Prerequisites |
- |
使用言語 /Language |
- |
更新日/Last updated on | 2021/01/28 |
---|---|
授業の概要 /Course outline |
Developing software is an activity that involves, understanding of requirements, design of computational structures and behavior, and implementation of the designs. It requires practical application and integration of various knowledge/skills including but not limited to programming and software engineering. In Integrated Exercise for Software, 3 to 5 students work in teams to learn practical software development by developing a software that solves a given problem (project theme). Project themes will be decided at beginning of the course, development is performed incrementally in phases of 3 weeks each, and results are reported at an interim review and a final review session. Teams working on same project theme will compete on developing a better software product. The teams are required to plan and manage their development using project tools to provide high transparency of their activity. For Integrated Exercise for Software II, software that integrates contents covered in multiple 1st-3rd (up to S1) year courses will be developed. Themes will include requirements, in addition to the contents of Integrated Exercise for Software I, on object-oriented design, databases, and user-interfaces. This course may be carried out in conventional face-to-face style or in a remote/web-conference style depending on the surrounding situation. The course style will be decided and announced to registered students at the beginning of the semester. |
授業の目的と到達目標 /Objectives and attainment goals |
1. Understand software requirements and define corresponding models 2. Create a software design that satisfies functional and quality requirements 3. Setup a suitable development environment and effectively manage development activities 4. Design and perform sufficient tests to verify software 5. Validate software by checking that it meets the needs of stakeholders |
授業スケジュール /Class schedule |
In each class (3 periods), 1. Progress report by each team and feedback by lecturers 2. Short lecture on the week’s activity by lecturer 3. Team meeting and development activity will be performed. Week 1: Team kickoff, Setup development environment Form teams, divide roles among members, prepare development environment. Week 2: Task definition, create project plan Receive development task, analyze requirements, and create an incremental development plan. Week 3: Phase 1 Requirements definition Select and review requirements to implement in first phase and begin design. Week 4: Phase 1 Implementation and design Refine requirements and create designs and perform implementation. Week 5: Phase 1 Demo Review current software prototype and adjust requirements, design, and implementation plan. Week 6: Phase 2 Requirements definition Select and review requirements to implement and begin design. Week 7: Phase 2 Design and implementation Refine requirements and create designs and perform implementation. Week 8: Phase 2 Demo (Mid-term review) Review current software prototype and adjust requirements, design, and implementation plan. Week 9: Phase 3 Requirements definition Select and review requirements to implement and begin design. Week 10: Phase 3 Design and implementation Refine requirements and create designs and perform implementation. Week 11: Phase 3 Demo Review current software prototype and plan for testing and final review. Week 12: Test Planning Create test plan and begin tests. Week 13: Test and Improvement Iterate test and fix cycle and improve quality. Week 14: Final Review Review software product and test results to deliver accept/reject decision. |
教科書 /Textbook(s) |
Handouts will be provided if necessary |
成績評価の方法・基準 /Grading method/criteria |
Performance will be assessed by the following items. 1. Presentation at each review (interim and final) 25% 2. Software product (documents and software) 40% 3. Final exam (individual interview) 25% 4. Participation in class activities and attitude 10% * Assessment of software product will be based on fulfillment of requirements (implemented functions and precision), performance, creativity, and innovation. * Contribution of each student will be checked in each review and development records. * Form and content of final examination will be announced at the beginning of the course. |
履修上の留意点 /Note for course registration |
* This course assumes students have completed the following courses. - IE03 Integrated Exercise for Software I - FU14 Introduction to Software Engineering * This course is based on practical activities that requires proactive participation by the students. * Due to the nature of activity, necessary knowledge/skills vary depending on the theme. Students are requested to self-study (individually or in teams, outside of classroom hours) any knowledge or skills as required to complete the project. * In addition to programming languages learned in other classes, such as, Java, students may use any programming language of their choice. |
参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
https://ie04-aizu-2020.github.io/ The course instructor has working experiences: Faculty with previous development experience will instruct the course. |