Firmware และ middleware ม การ ทำงาน อย างไร

Firmware Integration Technology (FIT) simplifies embedding peripheral function module drivers and allows portability between RX microcontrollers, with the aim of reducing the burden of program development and software resource management in software development using the RX Family.

  • |
  • |
  • |

About FIT

Features of FIT

FIT lays out clear rules for sample code (middleware and drivers) provided for RX Family devices as follows.

  • MCU initial settings
  • How to define a target board
  • File configuration
  • Names of functions
  • Common interface with user application

Conventionally, the above information has in many cases varied by sample code, so changes needed to be made to sample code when embedding into a user application. With FIT, there are rules for this information, so each sample code can be embedded into a user application with ease. Also, the peripheral function drivers and middleware which support FIT have a common interface with user applications. This makes it easy to port user applications when migrating between RX microcontrollers.

Firmware และ middleware ม การ ทำงาน อย างไร

FIT modules emphasize portability between RX family microcontrollers.

Easy Embedding to Project Generated by Integrated Development Environment

The e2 studio integrated development environment (IDE) which is based on the globally popular Eclipse open source IDE has a GUI (plug-in feature) for embedding FIT modules. Using this feature, FIT modules can be embedded with ease into projects generated in e2 studio. FIT modules also support CS+.

Configuration of FIT

FIT consists of a Board Support Package (BSP), peripheral function modules, and middleware modules.

  • BSP Module that performs initial MCU settings, clock settings, board settings, and so on
  • Peripheral Function Modules Drivers that control the peripheral functions of a RX microcontroller
  • Middleware Modules Middleware function such as TCP/IP and file system

Firmware และ middleware ม การ ทำงาน อย างไร

Using FIT modules helps ease development.

Advantages of FIT

1. Embed Peripheral Function Modules With Ease

Drivers and Middleware Supporting FIT

Peripheral function modules and middleware modules that support FIT operate in a common MCU basic setting (BSP).

Firmware และ middleware ม การ ทำงาน อย างไร

Conventional Drivers and Middleware

Firmware และ middleware ม การ ทำงาน อย างไร

2. Migrate Between RX Microcontrollers With Ease

Drivers and Middleware Supporting FIT

Once FIT is supported, the APIs of peripheral driver modules and middleware modules have common specifications. The MCU can be switched easily to another MCU.

Firmware และ middleware ม การ ทำงาน อย างไร

Conventional Driver and Middleware

Sample code and middleware which do not support FIT do not have a common API. Migrating between products takes many man-hours.

Firmware และ middleware ม การ ทำงาน อย างไร

Obtaining the Product

Peripheral function modules and middleware modules that support FIT are included with the RX Driver Package. Please download the RX Driver Package. FIT modules supported by device are listed in the List of FIT Modules.

Implementing FIT

Please refer to the following before implementing FIT modules. We recommend using the Smart Configurator.

User's Manual

  • Firmware Integration Technology User's Manual (PDF | English, 日本語)

RX Smart Configurator User' Guide

  • RX Smart Configurator User's Guide: CS+ (PDF | English, 日本語)
  • RX Smart Configurator User's Guide: e² studio (PDF | English, 日本語)
  • RX Smart Configurator User's Guide: IAREW (PDF | English, 日本語)

Application Note

RX Family Board Support Package Module Using Firmware Integration Technology Rev.7.41 (PDF | English, 日本語) The document covers conventions of the r_bsp so that users will know how to use it, configure it, and create a BSP for their own board.

Firmware คือ โปรแกรมที่ถูกสร้างขึ้นเพื่อใช้ฝังอยู่บนฮาร์ดแวร์ (Hardware) ของอุปกรณ์ต่าง ๆ หน้าที่หลักของ Firmware เป็นโปรแกรมที่ใช้ควบคุม และ ดึงประสิทธิภาพของฮาร์ดแวร์มาใช้งาน หรือ เป็นตัวกลางเชื่อมต่อระหว่าง ซอฟต์แวร์ (Software) ของคอมพิวเตอร์และฮาร์ดแวร์ หากขาด Firmware ไป ฮาร์ดแวร์ก็จะไม่รู้ว่าต้องทำงานอย่างไร หาก Firmware มีปัญหาหรือมีช่องโหว่ใด ๆ ก็อาจทำให้การดึงประสิทธิภาพของฮาร์ดแวร์ออกมาใช้ได้อย่างไม่เต็มที่ เช่น เกิดอาการ "บัค" ของระบบ เป็นต้น

Firmware และ middleware ม การ ทำงาน อย างไร
ภาพจาก https://predictabledesigns.com/introduction-to-embedded-firmware-development/

โดยเฉพาะถ้าเป็นในคอมพิวเตอร์ของเราที่มีฮาร์ดแวร์ทำงานอยู่หลายตัว ไม่ว่าจะเป็น ฮาร์ดดิสก์ (Harddisk), หน่วยประมวลผลกลาง (CPU), อุปกรณ์เก็บข้อมูลแบบ SSD, หน่วยความจำหลัก RAM หรือ หน่วยประมวลผลกราฟิก (GPU) ตัวฮาร์ดแวร์พวกนี้ก็จำเป็นต้องมี Firmware ที่ใช้ทำงานเพื่อสื่อสารกัน และ Firmware ก็จะมีการจัดเก็บโค้ดอยู่ใน ROM (Read Only Memory) หรือหน่วยเก็บข้อมูลแบบถาวรบน เมนบอร์ด (Mainboard)

ในขณะที่เมนบอร์ดเองก็มี Firmware เป็นของตัวเองด้วย โดยทุกคนก็จะรู้จักกันในชื่อ BIOS หรือ UEFI ซึ่งเป็น "Firmware Interface" ของเมนบอร์ด ทำหน้าที่ควบคุมการทำงานของฮาร์ดแวร์ทั้งหมดในคอมพิวเตอร์ นั่นเอง

ไดรฟ์เวอร์ (Drivers) แตกต่างกับ เฟิร์มแวร์ (Firmware) ไหม ?

มีคำถามที่หลายคนอาจสงสัยว่า แล้ว Driver แตกต่างกับ Firmware ตรงไหน เพราะหน้าที่ของมันดูเหมือนจะใกล้เคียงกัน หรือก็คือการใช้ควบคุมการทำงาน หรือ เชื่อมต่อกับฮาร์ดแวร์

โดยถ้าเทียบกันแล้ว ระหว่างไดรฟ์เวอร์ กับ Firmware ส่วนของไดร์ฟเวอร์จะเป็นโปรแกรมที่ทำงานโดยขึ้นตรงกับระบบปฏิบัติการ (OS) เป็นเหมือนคนนำสารของฮาร์ดแวร์ที่มีหน้าที่ไปติดต่อดำเนินการกับ Firmware และขอใช้งานฮาร์ดแวร์ ส่วนของ Firmware นั้นจะขึ้นตรงกับฮาร์ดแวร์ (Hardware) เหมือนคนที่คอยกำกับดูแลการทำงานของฮาร์ดแวร์โดยตรง

เมื่อสองอย่างนี้ทำงานร่วมกัน มันก็เหมือนองค์กรหนึ่งที่มีหลายฝ่าย และ ต้องทำงานให้สอดคล้องกัน เพื่อที่จะดึงศักยภาพของฮาร์ดแวร์ออกมาได้มากที่สุด ขาดอย่างใดอย่างหนึ่งไปไม่ได้

Firmware และ middleware ม การ ทำงาน อย างไร
ภาพจาก https://www.drpc.es/que-es-un-driver-y-que-es-firmware/

Firmware อยู่ที่ไหนบ้าง ?

เมื่อกี้เราพูดถึงว่า Firmware คืออะไรไปแล้ว พร้อมยกตัวอย่าง Firmware ในคอมพิวเตอร์ แต่อาจเป็นการอธิบายแบบจำกัดวงแคบมากเกินไป เพราะจริง ๆ แล้ว Firmware นั้นถูกใช้ในเกือบทุกอุปกรณ์อิเล็คทรอนิกส์ เพื่อทำให้ฮาร์ดแวร์ของอุปกรณ์นั้นตอบสนองตามคำสั่งของคนใช้งาน ไม่ว่าจะเป็น ไมโครเวฟ, เตาอบ (ไฟฟ้า), รีโมทคอนโทรล, กล้องวงจรปิด, ทีวี, เครื่องซักผ้า, อุปกรณ์ต่อพ่วงคอมพิวเตอร์, มือถือ หรือ พวกอุปกรณ์ต่อพ่วงมือถือ ก็ล้วนมี Firmware ทำงานอยู่

Firmware และ middleware ม การ ทำงาน อย างไร
ไฟสัญญาณจราจร ก็ยังมีเฟิร์มแวร์ ที่ใช้ควบคุมการเปลี่ยนไฟสัญญาณ / ภาพจาก https://www.digitalcitizen.life/simple-questions-what-firmware-what-does-it-do/

โดยเฉพาะบนมือถือที่เราใช้งานกันอยู่ทุกวัน ก็จำเป็นต้องมี Firmware เป็นตัวกลางเชื่อมระหว่างฮาร์ดแวร์ของอุปกรณ์กับระบบปฏิบัติการ (iOS, Android) เพื่อทำให้การตอบสนองของผู้ใช้เป็นไปตามวัตถุประสงค์

ที่น่าสนใจ คือ ปัจจุบันมีการเข้าใจผิด และ เรียก Firmware แบบผิด ๆ บนมือถือ เพราะจริง ๆ Firmware ควรเป็นอะไรที่อยู่กึ่งกลางระหว่าง Hardware และ ซอฟต์แวร์ระบบ เป็นส่วนหนึ่งที่ทำให้ชิปเซ็ตมือถือสามารถสื่อสารกับระบบปฏิบัติการที่พัฒนาในแต่ละรุ่นได้ เหมือนเวลาผู้ผลิตสร้างชิปเซ็ตมาและเขียนโปรแกรมให้รองรับ Android ได้ 3 ปี ประมาณนั้น

แต่ทุกวันนี้โดยทั่วไปชอบเรียกเหมารวมว่า Firmware เป็น ระบบปฏิบัติการ (OS) อย่างเช่นเวลาจะอัปเดตระบบปฏิบัติการ Android ดันไปเรียกว่าอัปเดต Firmware ของ Android แทน อะไรแบบนี้เป็นต้น

Firmware และ middleware ม การ ทำงาน อย างไร
ระดับของการทำงาน / จาก https://dennisfromperu.medium.com/iot-cybersecurity-startup-landscape-part-4-firmware-security-60d2dd89ab78

Firmware มีกี่ประเภท ?

อย่างที่กล่าวว่า Firmware มักถูกเขียนบันทึกลงในรอม (ROM) หรือหน่วยเก็บข้อมูลแบบถาวร เพื่อให้มั่นใจว่าตัวโปรแกรมของ Firmware จะไม่ถูกลบหรือดัดแปลง แต่ข้อเสียก็คือสมัยก่อน Firmware จะไม่สามารถอัปเดตได้เลย และเมื่อเทคโนโลยีซอฟต์แวร์มีความก้าวหน้ามากขึ้น Firmware ที่ล้าสมัยก็จะตกรุ่นอย่างรวดเร็ว แม้ฮาร์ดแวร์จะยังใช้งานได้ดีก็ตาม

ดังนั้นภายหลังก็เลยมีการคิดค้น EPROM (Erasable Programmable Read-Only Memory) และก็พัฒนาต่อเป็น EERPROM (Electrically Erasable Programmable Read-Only Memory) หรือ รอมแบบลบได้ ทำให้ปัจจุบัน Firmware ในคอมพิวเตอร์ มีการอนุญาตให้สามารถอัปเดตได้ แต่ก็จะแลกมาด้วยการผลิตที่ราคาสูง และก็ยังมีการเขียนที่ช้า ทำให้การอัปเดตนาน

ยุคต่อมาก็เลยอัปเกรดเป็น FEPROM (Flash Erasable Programmable Read Only Memory) หรือ Flash-ROM ที่ใช้อย่างแพร่หลายในคอมพิวเตอร์ยุคปัจจุบัน ทำให้มีราคาถูกและง่ายต่อการเขียนซ้ำ หรือ อัปเดตรวดเร็วขึ้น

อย่างไรก็ตามประเภทของ Firmware ในปัจจุบันนั้นมีอยู่ 3 ประเภทด้วยกัน แบ่งตามตำแหน่งการจัดเก็บและความซับซ้อนของฟังก์ชันการทำงาน คือ

  • Low-Level Firmware : เฟิร์มแวร์ที่เก็บข้อมูลในชิป ROM และ PROM ไม่สามารถทำให้เฟิร์มแวร์ของอุปกรณ์สามารถอัปเดตได้
  • High-Level Firmware : เฟิร์มแวร์ที่ใช้หน่วยความจำแบบ FEPROM (Flash Erasable Programmable Read Only Memory) อนุญาตให้เฟิร์มแวร์ของฮาร์ดแวร์ต่าง ๆ ทำการอัปเดตได้
  • Subsystem Firmware : เฟิร์มแวร์แบบกึ่งอิสระ บนอุปกรณ์และชิ้นส่วนที่ใช้ในระบบขนาดใหญ่ ช่วยทำหน้าที่ในการควบคุมเฟิร์มแวร์ของฮาร์ดแวร์ต่าง ๆ ที่ทำงานในระบบ และเป็นเหมือนกับ High-Level คือสามารถอัปเดตตัวเองได้ เช่นเฟิร์มแวร์ของ Mainboard (BIOS/UEFI)

การอัปเดต Firmware ช่วยอะไรได้บ้าง ?

ประโยชน์ของการอัปเดต Firmware นอกจากจะช่วยให้ดึงประสิทธิภาพของฮาร์ดแวร์มาใช้งานได้เสถียรมากขึ้นแล้ว ยังช่วยในเรื่องของการเพิ่มความสามารถ ความปลอดภัย หรือ แก้ไขความผิดพลาดของการทำงานได้ ถ้ายกตัวอย่างให้เห็นภาพในคอมพิวเตอร์ การอัปเดต Firmware ของ ไบออส (BIOS) ก็ช่วยให้การเรียกใช้งาน Firmware ในอุปกรณ์อื่น ๆ มีความเสถียรมากยิ่งขึ้น หรือ แก้บัคต่าง ๆ เวลาใช้คอมพิวเตอร์นั่นเอง

Firmware และ middleware ม การ ทำงาน อย างไร

อย่างใน อุปกรณ์ IoT เช่น Google Home ก็จะพิเศษหน่อย คือผู้ใช้ไม่ต้องอัปเดต Firmware เอง เพราะมันจะอัปเดตให้ลับ ๆ และคอยเพิ่มประสิทธิภาพหรือแก้ไขบัคในการใช้งานให้ด้วย

สรุปเกี่ยวกับ Firmware

สรุปแล้ว Firmware ถือเป็นส่วนสำคัญในการทำงานของเทคโนโลยี เปรียบเสมือนล่ามแปลภาษาที่ทำให้ ฮาร์ดแวร์ในอุปกรณ์รู้ว่าต้องทำงานอย่างไร ถ้าเกิดไม่มี Firmware ฮาร์ดแวร์ก็เป็นเพียงแค่วงจรอิเล็กทรอนิกส์ที่ทำงานไม่เป็น

ทำไมต้องอัพเดท firmware

เพิ่มความปลอดภัยของเครื่อง ในการอัปเดตมือถือหรือคอมพิวเตอร์มักจะมาพร้อมกับการเพิ่ม Firmware ทั้งตัวเครื่องและความปลอดภัยเข้ามาด้วยทำให้เวลาอัปเดตก็จะมีการเพิ่มความสามารถในการป้องกันการถูก Hacker ในการเข้ามาก่อกวนในการใช้งานของเราได้เช่นเดียวกัน

Firmware มีอะไรบ้าง

Firmware มีกี่ประเภท ?.

Low-Level Firmware : เฟิร์มแวร์ที่เก็บข้อมูลในชิป ROM และ PROM ไม่สามารถทำให้เฟิร์มแวร์ของอุปกรณ์สามารถอัปเดตได้.

High-Level Firmware : เฟิร์มแวร์ที่ใช้หน่วยความจำแบบ FEPROM (Flash Erasable Programmable Read Only Memory) อนุญาตให้เฟิร์มแวร์ของฮาร์ดแวร์ต่าง ๆ ทำการอัปเดตได้.

Middleware ทำอะไร

Middleware สามารถรองรับการพัฒนาแอปพลิเคชัน และช่วยในการทำให้แอปพลิเคชันทำงานได้ มีกรณีการใช้งานมากมาย และคุณอาจได้รับประโยชน์จากการใช้งานประจำวันจำนวนมากที่คุณใช้ การรู้จัก middleware และความหลากหลายสามารถช่วยคุณตัดสินใจว่า middleware แพลตฟอร์มใดที่คุณต้องการใช้ในแอปพลิเคชันและโปรแกรมของคุณ

การอัพเดตเฟิร์มแวร์ คืออะไร

การอัพเกรดเฟิร์มแวร์ เป็นสิ่งที่สำคัญมาก จะทำให้อุปกรณ์มีคุณลักษณะใหม่ ๆ ทำงานได้เร็วขึ้น มีเสถียรภาพมากขึ้น และการอัพเกรดอาจช่วยแก้ปัญหาด้านความปลอดภัยบางอย่าง ดังนั้นจึงเป็นเรื่องที่ดีหากคุณได้รับการแจ้งโดยเร็วที่สุดเท่าที่จะเป็นไปได้เมื่อมีเฟิร์มแวร์ใหม่สำหรับเซิร์ฟเวอร์ (Server) สวิทช์ (Switch) เราเตอร์ (Router) ...