Jest tego kilka przyczyn.
Przede wszystkim pamięć zajmuje dużo krzemu. Oznacza to, że zwiększenie ilości pamięci RAM bezpośrednio zwiększa obszar krzemowy układu, a tym samym koszty. Większy obszar krzemu ma efekt „podwójnego uderzenia” w cenę: większe żetony oznaczają mniej żetonów na wafel, szczególnie wokół krawędzi, a większe żetony oznaczają, że każdy chip ma większą wadę.
Drugi to kwestia procesu. Macierze RAM powinny być zoptymalizowane na różne sposoby niż logiczne i nie jest możliwe wysyłanie różnych części tego samego układu przez różne procesy - cały układ musi być wytwarzany w tym samym procesie. Istnieją półprzewodniki, które w mniejszym lub większym stopniu zajmują się produkcją pamięci DRAM. Nie procesory ani inna logika, po prostu pamięć DRAM. DRAM wymaga wydajnych powierzchniowo kondensatorów i tranzystorów o bardzo niskim wycieku. Wykonanie kondensatorów wymaga specjalnego przetwarzania. Wykonanie tranzystorów o niskim wycieku skutkuje wolniejszymi tranzystorami, co jest dobrym kompromisem dla elektroniki odczytu DRAM, ale nie byłoby tak dobre do budowy logiki o wysokiej wydajności. Wytwarzanie pamięci DRAM na matrycy mikrokontrolera oznaczałoby, że musiałbyś w jakiś sposób obniżyć optymalizację procesu. Duże macierze pamięci RAM są również bardziej podatne na awarie ze względu na ich duży obszar, malejącą wydajność i rosnące koszty. Testowanie dużych macierzy RAM jest również czasochłonne, dlatego włączenie dużych macierzy zwiększy koszty testowania. Dodatkowo korzyści skali zmniejszają koszt oddzielnych układów RAM bardziej niż bardziej wyspecjalizowane mikrokontrolery.
Pobór mocy to kolejny powód. Wiele wbudowanych aplikacji ma ograniczoną moc, w wyniku czego wiele mikrokontrolerów jest budowanych w taki sposób, że można je wprowadzić w stan uśpienia o bardzo małej mocy. Aby umożliwić uśpienie przy bardzo niskim zużyciu energii, SRAM jest używany ze względu na jego zdolność do utrzymywania zawartości przy wyjątkowo niskim zużyciu energii. SRAM z podtrzymaniem bateryjnym może utrzymywać swój stan przez lata bez zasilania pojedynczym przyciskiem 3V. Z drugiej strony DRAM nie może utrzymać swojego stanu przez ułamek sekundy. Kondensatory są tak małe, że garstka elektronów wydostaje się na zewnątrz i wnika do tranzystorów ogniw. Aby temu przeciwdziałać, pamięć DRAM musi być stale odczytywana i zapisywana. W rezultacie DRAM zużywa znacznie więcej energii niż SRAM na biegu jałowym.
Z drugiej strony komórki bitowe SRAM są znacznie większe niż komórki bitowe DRAM, więc jeśli wymagana jest duża ilość pamięci, DRAM jest ogólnie lepszą opcją. Dlatego dość często używa się niewielkiej ilości SRAM (kB do MB) jako wbudowanej pamięci podręcznej w połączeniu z większą ilością pozamipowych DRAM (MB do GB).
Zastosowano kilka bardzo fajnych technik projektowania, które zwiększają ilość pamięci RAM dostępnej w systemie wbudowanym przy niskim koszcie. Niektóre z nich to pakiety wieloukładowe, które zawierają osobne matryce dla procesora i pamięci RAM. Inne rozwiązania obejmują wytwarzanie padów na górze procesora, dzięki czemu układ pamięci RAM można układać jeden na drugim. To rozwiązanie jest bardzo sprytne, ponieważ różne układy pamięci RAM można przylutować do procesora w zależności od wymaganej ilości pamięci, bez konieczności dodatkowego routingu na poziomie płyty głównej (szyny pamięci są bardzo szerokie i zajmują dużo miejsca na płycie). Należy zauważyć, że systemy te zwykle nie są uważane za mikrokontrolery.
Wiele bardzo małych systemów wbudowanych i tak nie wymaga dużo pamięci RAM. Jeśli potrzebujesz dużo pamięci RAM, prawdopodobnie będziesz chciał użyć wyższej klasy procesora, który ma zewnętrzną pamięć DRAM zamiast wbudowanej pamięci SRAM.