SynopsisJob camp (JC) offerred by Multimedia Development Corporation (MDeC) is designed specifically for any Knowledge worker who wants to improve or expand their current ICT skills and knowledge. This program seeks to help knowledge workers with the support and access to courses and trainings to stay aligned with the current needs of the ICT industry.
DreamCatcher Consulting has been appointed by MDeC to offer programs in engineering tracks namely VLSI, DSP, and RF.
The general entry requirement for the program is Bachelor or Master Degree in Electrical and Electronics Engineering, Computer Science, or IT. Upon completion of the training program, participants are expected to acquire skill sets required to meet existing vacancies in the industry.
Program Highlight
- coaching from experienced academic instructors as well as engineers from industry
- substantial lab exercises to ensure participants have ample opportunities for hands-on
- use of Embedded Linux toolchain for embedded system design and development activities
Program Details
- Each course is 23 days in duration
- Courses are held in Kuala Lumpur or Penang
- Course fees are fully born by MDeC
Registration
Fill up the registration form and attach with: - Passport-sized photo
- Photocopy of IC
- Photocopy of university certificate or transcript
Enquiries
Visit http://dreamcatcher.asia/jc.htm for full details.
What You Will Learn1) Necessary technical soft skills for engineers to adapt from the university environment to real life technical working environment. These skills are:
- Technical writing
- Technical presentation
- Creative problem solving - Triz
2) Pre-requisite knowledge in embedded system design. These include::
- Basics of embedded systems
- Open source software
- Linux and Embedded Linux
- Intel x86 processor platform
- C programming
3) Hands-on experience in setting up an embedded system using Embedded Linux. These include:
- Using compiler toolchain
- Building Linux kernel module
- Booting the system with bootloader
4) Practical skills in developing applications in embedded system using compiler toolchain. These include:
- Building application software
- Making inter-process communication
- Establishing networking and Internet connection
Who Should AttendAvailable K-Workers who are looking for practical skills in preparation for a technical career in semiconductor industry such as:
- Design and Development Engineer
- Validation Engineer
- CAD Engineer
- Test Development Engineer
- System Integration Engineer
- etc
Prerequisite- Malaysian citizens
- Diploma/Degree holders in ICT-related fields
- Available K-Workers (currently unemployed, in-between jobs, changing fields, retrenched) with Bachelor or Master Degree in Electrical and Electronics Engineering, Computer Science, or IT.
- CGPA 2.5 or above
Course MethodologyThe participants are first taught the background knowledge and skills needed for embedded system design in a classroom setting. Hands-on exercises on shell programming and C programming will be conducted to build sufficient skill foundations.
The participants will then be taught intensively the Linux kernel, x86 processor and platform, bootloader, application software compilation, multitasking, inter-process communication, networking and Internet. This is tightly coupled with hands-on exercises along the way. The system will be implemented on an Intel Atom processor based platform.
Having acquired both pre-requisite knowledge and practical embedded system design skills using language and tools taught, the participants are required to design an embedded system using embedded Linux and x86 platform. Trainees will be going through embedded system design flow, from initial design concept, design planning, design construction, design verification, to design documentation.
Software Tools Used
- Kubuntu Linux
- Embedded Linux toolchain
Hardware Tools Used
- Intel Atom motherboard
- DDR SDRAM and USB drive
- Keyboard and mouse
- Serial cable and LAN cable
Course Duration23 days, 9am- 5 pm
Course StructureModule 1 : Technical soft skills (3 days)
- Technical writing
- Technical presentation
- Creative problem solving
Module 2 : Fundamentals of Embedded System (6 days) - Introduction: Introduction to Linux, introduction to embedded Linux, introduction to open source, GPL & licensing, open source, Linux in general, Linux in embedded systems, typical system architecture
- First Steps with the Shell: Console, shell, common Linux commands, getting help, strong security model, shell programming
- Introduction to Emulation: What is emulator platform, why it is useful, how to use it
- Linux on the x86 platform: x86 system topology, system memory map, bootloader
- The x86 Toolchain: Compilation/brief development overview, what is a toolchain, how to obtain and use it, how to compile and test Linux programs, developing an application for the target platform
- C Programming: Operators, control flow, functions, pointers, arrays, structures, I/O, object-oriented programming
Module 3 : Building an Embedded System (8 days)
- Testing and Development: Multitasking with programs in the shell, beginners GDB, useful information, embedded development system setup, toolchain, kernel, user space program development
- Linux Kernel Modules: What are Linux kernel modules (LKMs), how LKMs are used, how to design and build our own LKMs
- The x86 Processor Architecture and system components: x86 processor architecture, memory address space allocation, memory, mass storage device
- x86 Board Booting Process and Bootloader: Boot up sequence of x86 board, bootloader operation
- Building an x86 Kernel: Prepare system, the kernel source code, configuring the kernel, make the kernel, test the new kernel
- Applications Software: Obtaining software, compiling software, compiling library, compiling application, testing application, requirement and features of software for embedded system, real-time, software quality, choice of programming language, use of C, building dependable embedded system, facets of dependability, design challenge
- Multitasking in a Program: Multitasking OS, fork, clone, scheduling, general OS scheduling, Linux scheduling, problems with multitasking, safe multitasking code, efficient coding for small systems
- Inter-Process Communication: Named pipes, blocking behaviour, handling data, IPC between machines, signaling
- Networking and Internet: Internet technology, important Internet applications, Internet standards and RFCs, Networking: basic concepts, types of computer networks, switching, layered network architecture, internetworking devices, network topology, TCP/IP, client-server model, socket, domain name system, telnet, FTP, web server, socket I/O, TCP client-server interaction, UDP client-server interaction
Module 4 : Design Project (5 days)
- Embedded System Design Project on Intel x86 Platform: To sharpen trainees? embedded system development skills where they will be able to implement an embedded system using embedded Linux and x86 platform. To expose trainees to the complete toolchain in embedded system development. Trainees will be going through embedded system design flow, from initial design concept, design planning, design construction, design verification, to design documentation
Module 5 : Final Assessment (1 day)