ARM Nedir? Arm Programlama Nedir? Arm Mimarisi Nedir?
ARMın açılımı Acorn RISC Machinedir. Buradaki RISC ise Reduced Instruction Set Computingdir.(Türkçe karşılığı İndirgenmiş Komut Setli Programlamadır.) Bir çeşit işlemci mimarisidir, az enerji tüketerek çok verim alınabilmesinden dolayı tercih edilme sebebi oluyor. Nasıl bir verim alınıyor derseniz; 32-Bit yapısı ile, zengin evrionmental hardware dediğimiz çevresel donanım imkanlarıyla yüksek hızlara çıkabiliyor. Elektronik alanında büyük oranda ARM mimarisine sahip işlemciler kullanılıyor.
ARM tek başına bir anlamı yok, yani işlemci özelliği taşımıyor. Firmalar bu mimariyi satın alıp, mimari özelliklerini kendi isteklerine göre şekillendiriyor ve kendi isimleriyle piyasa sürüyor.
Bunlara örnek olarak ST ve TI. Bunlar STMicroelectronics, Texax Instruments ve Philips gibi büyük birçok firma işlemcilerini ARM mimarisi ile şekillendirir. Bunları yaparken her firmanın ARM mimarisinde kendi kütüphaneleri oluyor, yani siz gidip STMicroelectronics mimarisinde Texasınkini kullanamazsınız. Mimari olarak bunlar 6 gruba ayrılıyor;
-Cortex-A
-Cortex-A50
-Cortex-R
-Cortex-M
-Classic ARM Processor
-SecureCore Processor
[+]Cortex A[+]
Mobil teknolojide yani telefonlar,tabletlerde, bilgisayarlarda ve sanayide, sanayiden kastım otomativ sektöründe yüksek teknolojiyi genel olarak kapsayan yerlerde Cortex-A kullanılır. Yüksek hız gerektiren işlemler için tasarlanmıştır diyebiliriz. Görüntü işleme, çok fonksiyonlu işletim sistemleri için kullanılır.
[+]Cortex-M[+]
Elekronikte alanının birçok yerinde ve yine özellikle sanayilerde hemen hemen Cortex-M tercih ediliyor bunun sebebi power saving, kolay kullanım ve yüksek performanslıdır, oldukça kullanışlıdır. 8 ve 16 Bitlik işlemcilere karşı çıkartılmış bir seridir. Ve maliyet bakımından uygundur.
[+]Cortex-R[+]
Modemlerde, harddisklerde genel olarak kullanılır. Gerçek zamanlıdır ve teknik cihazlar için kullanılır. Örneğin ev içerisindeki elektronik eşyalar gibi.
[+]SecureCore Processor[+]
Güvenliğin ön planda olduğu yerlerde örneğin Smart Cardsda kullanılır, Master Card'da kullanılır.
[+]Classic ARM Processor[+]
Günümüz teknolojilerine göre biraz ilkel kaldığı için bunlar yerine artık Cortex-M/R kullanılıyor.
Ben bu seride STM32F4 geliştirme kitini kullanacağım, fiyatı uygundur yaklaşık 30-40$ arasında. Bu da Cortex-M4 grubundadır. Bu grubun mimarisini inceleyelim.
[+]NVIC: Interruptların vektörel yönlendirmesi için kullanılmaktadır.
[+]Floating Point Unit : Aritmetik işlemlerin yapıldığı yerdir, örneğin siz 32 bitlik 1 ve 0 dizisini toplayıp çıkaracaksınız, işaretin pozitif-negatif olduğunu veya opsiyonel bitler ile virgüllü işlemleri belirtir.
[+]Debug and Trace: Kapsadığı bölümler şu şekildedir; DAP Portu, Serial Wire Viewer Portu, Data Watchpoints, Flash Patch. Burada bilmemiz gereken Serial Wire Viewer'dır, dışarıdan harici USB veya herhangi bir bellekten data okuma işlemi için kullanılan porttur. Siz C veya Asm ile programlama kodladınız ama bakıyorsunuz program çalışması gerekiyor, hata göremiyorsunuz, siz bir sonuç beklerken bambaşka sonuç alıyorsunuz, burada doğru mu çalışıyor, yanlış mı çalışıyor diye debug işlemlerini bu kısımdan gerçekleştiriyorsunuz.
[+]Memory Protection Unit: RAM'ın içerisindeki bilgileri düzgün çalıştırabilmesi için size yardımcı olan devredir, koruma ünitesi gibi düşünebilirsiniz.
[+]Bus Matrix: Burası 2 portu kapsıyor, Code Interface ve SRAM; Code Interface harici bir bellekten kod görüntüleme portudur. SRAM ise Statik RAM'dan kod görüntüleme portudur.
Kullanacağımı Development Kit STM32F4
Geliştirme ortamı olarak Keil Version5 kullanacağız.
Keil'ın sitesinden indirebiliriz.
Kütüphanemize ihtiyacımız olacak, kütüphanemize ise videonun açıklamasından ulaşabilirsiniz.
[ame="https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be"]https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be[/ame]
Bir dahaki konuda görüşmek üzere.
ARM tek başına bir anlamı yok, yani işlemci özelliği taşımıyor. Firmalar bu mimariyi satın alıp, mimari özelliklerini kendi isteklerine göre şekillendiriyor ve kendi isimleriyle piyasa sürüyor.
Bunlara örnek olarak ST ve TI. Bunlar STMicroelectronics, Texax Instruments ve Philips gibi büyük birçok firma işlemcilerini ARM mimarisi ile şekillendirir. Bunları yaparken her firmanın ARM mimarisinde kendi kütüphaneleri oluyor, yani siz gidip STMicroelectronics mimarisinde Texasınkini kullanamazsınız. Mimari olarak bunlar 6 gruba ayrılıyor;
-Cortex-A
-Cortex-A50
-Cortex-R
-Cortex-M
-Classic ARM Processor
-SecureCore Processor
[+]Cortex A[+]
Mobil teknolojide yani telefonlar,tabletlerde, bilgisayarlarda ve sanayide, sanayiden kastım otomativ sektöründe yüksek teknolojiyi genel olarak kapsayan yerlerde Cortex-A kullanılır. Yüksek hız gerektiren işlemler için tasarlanmıştır diyebiliriz. Görüntü işleme, çok fonksiyonlu işletim sistemleri için kullanılır.
[+]Cortex-M[+]
Elekronikte alanının birçok yerinde ve yine özellikle sanayilerde hemen hemen Cortex-M tercih ediliyor bunun sebebi power saving, kolay kullanım ve yüksek performanslıdır, oldukça kullanışlıdır. 8 ve 16 Bitlik işlemcilere karşı çıkartılmış bir seridir. Ve maliyet bakımından uygundur.
[+]Cortex-R[+]
Modemlerde, harddisklerde genel olarak kullanılır. Gerçek zamanlıdır ve teknik cihazlar için kullanılır. Örneğin ev içerisindeki elektronik eşyalar gibi.
[+]SecureCore Processor[+]
Güvenliğin ön planda olduğu yerlerde örneğin Smart Cardsda kullanılır, Master Card'da kullanılır.
[+]Classic ARM Processor[+]
Günümüz teknolojilerine göre biraz ilkel kaldığı için bunlar yerine artık Cortex-M/R kullanılıyor.
Ben bu seride STM32F4 geliştirme kitini kullanacağım, fiyatı uygundur yaklaşık 30-40$ arasında. Bu da Cortex-M4 grubundadır. Bu grubun mimarisini inceleyelim.
[+]NVIC: Interruptların vektörel yönlendirmesi için kullanılmaktadır.
[+]Floating Point Unit : Aritmetik işlemlerin yapıldığı yerdir, örneğin siz 32 bitlik 1 ve 0 dizisini toplayıp çıkaracaksınız, işaretin pozitif-negatif olduğunu veya opsiyonel bitler ile virgüllü işlemleri belirtir.
[+]Debug and Trace: Kapsadığı bölümler şu şekildedir; DAP Portu, Serial Wire Viewer Portu, Data Watchpoints, Flash Patch. Burada bilmemiz gereken Serial Wire Viewer'dır, dışarıdan harici USB veya herhangi bir bellekten data okuma işlemi için kullanılan porttur. Siz C veya Asm ile programlama kodladınız ama bakıyorsunuz program çalışması gerekiyor, hata göremiyorsunuz, siz bir sonuç beklerken bambaşka sonuç alıyorsunuz, burada doğru mu çalışıyor, yanlış mı çalışıyor diye debug işlemlerini bu kısımdan gerçekleştiriyorsunuz.
[+]Memory Protection Unit: RAM'ın içerisindeki bilgileri düzgün çalıştırabilmesi için size yardımcı olan devredir, koruma ünitesi gibi düşünebilirsiniz.
[+]Bus Matrix: Burası 2 portu kapsıyor, Code Interface ve SRAM; Code Interface harici bir bellekten kod görüntüleme portudur. SRAM ise Statik RAM'dan kod görüntüleme portudur.
Kullanacağımı Development Kit STM32F4
Geliştirme ortamı olarak Keil Version5 kullanacağız.
Keil'ın sitesinden indirebiliriz.
Kütüphanemize ihtiyacımız olacak, kütüphanemize ise videonun açıklamasından ulaşabilirsiniz.
[ame="https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be"]https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be[/ame]
Bir dahaki konuda görüşmek üzere.
Son düzenleme: