Gömülü sistemlerin tasarımı ve geliştirilmesi, uygulama gereksinimleri ve bilgi teknolojileri tarafından yönlendirilmektedir. Mikroelektronik teknolojisindeki sürekli yenilik ve gelişmelerle birlikte, büyük ölçekli entegre devrelerin entegrasyon ve işlem düzeyleri de sürekli olarak iyileştirilmiştir. Özellikle, gömülü gerçek zamanlı işletim sistemlerinin (RTOS) ortaya çıkışı, karmaşık gömülü sistem uygulama yazılımlarının geliştirilmesi için temel desteği ve yüksek verimli bir geliştirme platformu sunmaktadır.
Gömülü Sistem Tasarım Süreci
Tasarım Aşaması
Yeni bir ürünün kavramsal tasarımının ilk aşaması, pazar tahminleri, müşteri ihtiyaçları ve teknolojik gelişmelere dayalı olarak ürünle ilgili bir öngörü içerir. Bir ürün planlanırken, satış adedi, fiyat ve kâr tahminlerini içeren bir iş planı hazırlanır. Bu, ilk ürün düzeninin, tasarım özelliklerinin ve ürün pazarlama planının oluşturulmasına yol açar. Bu aşamada, yeni bir ürün ambalaj konsepti oluşturmak üzere endüstriyel tasarımcılar da sürece dahil edilebilir.
Satış fiyatının, her bir ürün biriminin üretim maliyetine ek olarak şirketin pazarlama, tasarım ve geliştirme maliyetlerini de karşılaması gerektiğini unutmayın. Bu, satış hacmine bağlıdır, ancak bir ürün biriminin üretim maliyetinin iki veya üç katı bir fiyat seviyesi olağandışı değildir.

Geliştirme Aşaması
Donanım ve yazılım uygulama çalışmalarının çoğu, tasarım aşamasının sonunda ve geliştirme aşaması sırasında gerçekleştirilir. Tasarım kararlarının eleştirel bir şekilde incelenmesi, proje şartnamelerine dayalı bir proje konseptinin fiziksel olarak uygulanabilir olup olmadığının belirlenmesine yardımcı olur. Tasarım kararları analiz edilmeden önce genellikle elektriksel ve yazılım maketleri oluşturulur. Ardından, daha ayrıntılı donanım ve yazılım testleri için az sayıda prototip tasarlanır, üretilir ve kullanılır.
üretim aşaması
Son olarak, üretim aşamasında büyük miktarda ürün üretilir. Öncelikle, seri üretime geçilmeden önce genellikle ek test ve değerlendirmeler için küçük bir pilot parti hazırlanır. Kalite mühendisleri, ürün ve süreç kalitesini iyileştirmek için sürekli olarak çalışır. Destek mühendisleri ise yeni bir ürünün piyasaya sürülmesinin ardından ortaya çıkan değişikliklerle ilgilenir ve ürün için teknik destek sağlar. Küreselleşmenin mevcut eğilimleri göz önüne alındığında, yeni bir gömülü cihazın seri üretimi genellikle maliyet açısından daha uygun olan başka bir ülkede gerçekleştirilir. Birçok gömülü cihaz için tüm süreç altı aydan bir yıla kadar sürebilir, ancak rekabetçi pazar sürekli olarak daha kısa bir ürün yaşam döngüsü gerektirmektedir.
Gömülü sistem projesi geliştirme
Yazılım geliştirme ve mühendislik tasarım çalışmalarının büyük kısmı geliştirme aşamasında gerçekleştirilir; bu aşama şimdi daha ayrıntılı olarak açıklanacaktır. Öncelikle, tasarımcılar işlemciyi ve işletim sistemini seçmelidir. Gömülü bir cihaz için işlemci seçimi, fiyat, performans, güç tüketimi ve yazılım desteği gibi dikkate alınması gereken birçok faktörü içerir.

işlemciyi seçin
Üreticiler, işlemcilerini anlatan kılavuzlar sunar ve genellikle geliştiricilere, bu işlemciyi kullanan yeni bir bilgisayar tasarımı geliştirirken başlangıç noktası olarak kullanılabilecek eksiksiz bir referans kartı sağlar. Her bir işlemcinin, bellek aygıtının ve gerekli tüm yongaların ayrıntılı açıklaması bu kılavuzun kapsamı dışındadır; ancak yazılım geliştirmeyi doğrudan etkileyen en genel donanım özelliklerinden bazıları ilerleyen bölümlerde ele alınacaktır.
donanım aygıtlarını işlemciye bağlamak
Gömülü sistem donanım tasarımcısı işlemciyi ve buna uygun bellek aygıtlarını seçtikten sonra, bir sonraki adım, gerekli aygıtları işlemciye bağlamak için gereken donanım G/Ç aygıtlarını ve ilgili veri yolu yapısını eklemektir. Gömülü sistemlerin tasarımı, yeni tasarımda ihtiyaç duyulan çeşitli G/Ç aygıtları için gerekli donanımın seçilmesi ve bağlanmasını içerir.
Test etme, hata ayıklama ve yeniden tasarlama
Tasarımın şematik diyagramı özenle girildikten sonra, baskılı devre kartları için bilgisayar destekli tasarım (CAD) sistemi kullanılarak gömülü cihaz için bir baskılı devre kartı (PCB) tasarlanır. Bu araç, devre şemasından pin bağlantı bilgilerini içe aktarır ve bunları, baskılı devre kartı üzerindeki entegre devreleri (IC) birbirine bağlamak için kullanılan bakır iletkenleri tasarlamak ve test etmek amacıyla kullanır. Birkaç baskılı devre kartı oluşturulur, gerekli bileşenlerle doldurulur ve ardından yeni tasarım üzerinde kapsamlı yazılım testleri gerçekleştirmek için kullanılır. Test sırasında tespit edilen herhangi bir donanım tasarım hatası, devre şemasında bir değişiklik, baskılı devre kartı tasarımında bir modifikasyon ve yeni bir tasarım gerektirecektir. Bu, baskılı devre kartlarının üretim döngüsünü ve test süresini uzatacak ve buna bağlı olarak geliştirme süresini de artıracaktır.
işletim sistemini seçin
Yazılım geliştirme araçları genellikle işletim sistemi ile birlikte sunulur. İşletim sistemi C / C++ dillerinde yazıldığından, yeni bir işletim sistemi oluşturmak için derleyici, bağlantı düzenleyici, hata ayıklayıcı ve ikili görüntü araçları gerekir. Uygulama geliştirme için de genellikle aynı araçlar kullanılır.
Toplam ürün geliştirme süresini kısaltmak amacıyla yazılım geliştirme, donanım geliştirme ile paralel olarak gerçekleştirilir. Günümüzün gömülü cihazlarının ürün yaşam döngüsünün giderek kısalması nedeniyle bu durum daha da önem kazanmaktadır. Yazılım geliştirme ve test için, yeni bir donanım platformu kullanıma sunulmadan önce, aynı işletim sistemini çalıştıran benzer donanıma sahip emülasyon araçları ve gömülü bilgisayar kartları kullanabilirsiniz. Kodun çoğu C / C++/C# ile yazıldığından, yazılımın çoğu başka bir işlemci veya emülatör üzerinde bile geliştirilebilir ve test edilebilir. Daha sonra, yeni donanım kullanıma sunulduğunda, son geliştirme ve test aşaması için kod yeni işlemciye göre yeniden derlenir.
Yazılımınızın geliştirilmesini tamamladığınızda, test ve son sürüm için onu gerçek bir cihaza aktarabilirsiniz. Windows Embedded CE, geliştirme araçlarının yanı sıra bir ARM emülatörüne sahiptir. Emülatör, yazılımınızı gerçek donanımdan çok daha yüksek hızda bir PC'de çalıştırmanıza olanak tanır. Emülatör, yazılımınızın hata ayıklama ve profil oluşturma işlemleri için kullanılabilir; ayrıca uzak cihazlar için yazılım geliştirme amacıyla da kullanılabilir.
Gömülü cihazlar için bellek teknolojileri
Günümüzde çoğu gömülü cihaz, ana bellek olarak SDRAM veya bazen SRAM, kalıcı bellek olarak ise Flash veya ROM olmak üzere iki tür bellek kullanmaktadır. SDRAM, SRAM’a kıyasla bellek bit başına maliyeti önemli ölçüde daha düşüktür, ancak periyodik dinamik bellek güncelleme döngüleri için daha gelişmiş bir donanım denetleyicisi gerektirir. Tasarım sürecinin başında alınması gereken en önemli kararlardan biri, cihazın her bir bellek türü için ne kadar belleğe ihtiyaç duyduğudur.
SDRAM bellek
SDRAM, Senkron Dinamik Rastgele Erişim Belleği'nin kısaltmasıdır. 3,3 V çalışma gerilimi ve 64 bit bant genişliği kullanır. Aynı zamanda uzun süredir yaygın olarak kullanılan bellek türüdür; 430TX yonga setinden 845 yonga setine kadar tümü SDRAM'ı destekler. SDRAM, CPU ve RAM'i aynı saat frekansı üzerinden birbirine kilitler, böylece CPU ve RAM bir saat döngüsünü paylaşabilir ve aynı hızda senkronize olarak çalışabilir. Her saat darbesinin yükselen kenarı veri aktarımını başlatır ve hız, EDO bellekinkinden %50 daha yüksektir.
Flash bellek
Gömülü cihazların çoğunda sabit disk bulunmadığından, işletim sistemi ve uygulama programları genellikle flash bellekte depolanır.
Flash bellek cihazları, verileri flash yongalarında depolar. Flash yongaları, bir döngü içinde hareket eden elektronlardan oluşan bir yapı içerir. Elektronlar bellek hücresinde depolanır ve yongadaki farklı veri bitleri arasında ileri geri hareket eder. Bit sayısı, elektronların hücreler veya bitler arasında ne kadar hızlı hareket ettiğiyle ölçülür.
Bir bit üzerinde bir değişiklik yapıldığında, bu değişiklik bir sonraki bite yazılır. Aynı anda iki bit değiştirilirse, programa iki yeni bayt eklenir ve bu şekilde devam eder.
SDRAM ve Flash
SDRAM, flash bellekten daha hızlıdır; bu özelliği sayesinde hızlı veri erişimi gerektiren uygulamalar için idealdir.
SDRAM, flash bellekten daha az güç tüketir, bu da onu taşınabilir cihazlar için ideal kılar.
SDRAM, flash bellekten daha pahalıdır, bu da onu maliyetin önemli olduğu uygulamalar için daha az ideal hale getirir.
Flash bellek, SDRAM'den daha dayanıklıdır, bu nedenle verilerin uzun süre saklanması gereken uygulamalarda sıklıkla kullanılır.
Flash belleğin okuma hızı SDRAM'e kıyasla çok daha yavaştır.
Flash bellek yalnızca sınırlı sayıda yazma işlemini destekler; bu nedenle, Flash belleğin (sabit disk yerine) sanal bellek sayfa değişim cihazı olarak kullanıldığı, isteğe bağlı sayfalama özelliğine sahip bir sanal bellek sisteminin (masaüstü bilgisayarlarda olduğu gibi) gömülü cihazlarda kullanılması genellikle yaygın değildir.



