Czy niektóre procesory są implementowane w standardowych komórkach, a inne są dostosowywane?

11

Wyjaśniając to pytanie, widzę kilka zdjęć matryc, które implementują Cortex-M0, z Bluetooth LE i tak dalej, w zależności od funkcjonalności układu, i wyglądają następująco (nRF51822):

nRF51822

Podczas gdy na starszych procesorach nie widzę dużo cyfrowej implementacji „rozmytej” logiki, takiej jak ta (AMD386):

AMD386

Po googlowaniu wydaje się, że dzisiejsze implementacje ARM są wykonywane przy użyciu standardowych komórek (tworząc amorficzne kształty na matrycy). Mogę więc powiedzieć, że implementacją „rozmytą” na pierwszym zdjęciu jest sam Cortex.

Rozumiem, że wszystkie regularne kształty mogą być wspomnieniami, a wszystkie „ręcznie rysowane” części są analogiczne. Zastanawiam się, czy w przeszłości projektanci analogów wdrażali części cyfrowe pod przewodnictwem cyfrowych facetów, którzy definiowali architekturę?

czego mi brakuje?

thexeno
źródło
12
Warto zauważyć, że trudno jest porównać te dwie matryce z różnych powodów: proces (AM386 wynosił 800 nm, M0 prawdopodobnie <100 nm), typ (procesor vs mikro - pamięci są bardzo różne), generacja (1991 vs 2009 - bardzo różne oprzyrządowanie) itp.
awjlogan
Aby wyegzekwować swój punkt widzenia, trudno było mi znaleźć równoważny obraz współczesnej kości w standardowych komórkach, jeśli w ogóle istnieje.
thexeno

Odpowiedzi:

19

Nie, projektanci układów analogowych nie tworzyli mikroprocesorów pod kierunkiem architektów cyfrowych. Bardziej słuszne jest stwierdzenie, że projektanci cyfrowych układów scalonych musieli sporo wiedzieć o tym, jak zachowały się tranzystory.

Wybór, czy konkretna część cyfrowego układu scalonego zostanie wykonana przy użyciu standardowych ogniw, czy ręcznie rysowanych obwodów, jest po prostu kwestią ekonomiczną. W przypadku gęstych, wysoce powtarzalnych struktur, takich jak pamięci (pamięć podręczna, pamięć ROM mikrokodu, plik rejestru), warto zainwestować czas w ręczne wykonanie kilku podstawowych komórek, które byłyby zestawiane razem ... wynik był znacznie mniejszy i szybszy niż wykonanie równoważnego obwodu ze standardowych komórek.

Bloki „logiki losowej”, takie jak maszyny stanu i małe liczniki, zostały utworzone przy użyciu standardowych komórek i narzędzi CAD. Tworzenie ręcznie wykonanych układów dla tych bloków zajęłoby ogromną ilość czasu i przyniosło niewielkie korzyści. Zamiast tego ludzie pracowali nad ulepszeniem narzędzi CAD i bibliotek komórek.

Elliot Alderson
źródło
16

„Zamazany” wygląd, który widzisz na pierwszym mikrofotografii, jest rzeczywiście wynikiem automatycznego algorytmu „zamień i trasuj” syntetyzującego projekt przy użyciu standardowej biblioteki komórek.

Starsze części, takie jak AMD386 na drugim obrazie, poprzedzają istnienie tych algorytmów. Cały projekt został starannie umieszczony i poprowadzony ręcznie, uwzględniając jego bardziej uporządkowany wygląd. (Z drugiej strony brak pojedynczego procesu tworzącego układ odpowiada za duże obszary połączeń wymaganych w 386 - algorytm PAR prawdopodobnie mógłby stworzyć znacznie bardziej wydajny układ).

Zauważ, że nie oznacza to, że w AMD386 jest coś analogicznego. To część całkowicie cyfrowa! Komponenty analogowe we współczesnych układach scalonych często wyglądają na bardziej „uporządkowane”, ponieważ zawierają fizycznie duże części, które muszą być oddalone od innych elementów logicznych, takich jak okrągłe cewki indukcyjne w prawym dolnym rogu nRF51822.

Duskwuff -inactive-
źródło
„AMD386. To część całkowicie cyfrowa!” - Chciałbym zwrócić uwagę na coś: przynajmniej pady IO i podobne rzeczy (zakładając, że nie ma wewnętrznych regulatorów, oscylatorów itp.), Muszą być analogowe. Istnieją diody zabezpieczające, może diody zabezpieczające przed odwróceniem, różne tranzystory falowników dla Fan-Out / In. I kto wie, czego mi brakuje. Nie jestem pewien, czy istnieje na świecie czysty cyfrowy układ scalony, złożony tylko ze standardowych komórek i kilku linii VDD / GND.
thexeno