-
41. Data: 2015-11-15 17:07:55
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: janusz_k <J...@o...pl>
W dniu 2015-11-15 o 13:17, Marek pisze:
> On Sun, 15 Nov 2015 12:30:49 +0100, Zbych <z...@o...pl> wrote:
>> Sprzętowy stos przeszkadza w przełączaniu wątków.
>
> Bosh, jakie wątki, mówimy o prostej 8 bitowej architekturze.
>
>
>> 8-bitowy procek nie oznacza 8-bitowej przestrzeni adresowej. Skąd
> ten
>> pomysł?
>
> Wow, Atmega ma 16 bitowe rejestry ogólnego przeznaczenia (nie chodzi o
> rejestr PC)?
Tak i to nawet trzy, do tego dodawanie, odejmowanie od nich liczby 0-63,
gdzie wynik jest może być np: indexem do tablicy, kopiowanie rej 16bit,
poza tym lista rozkazów jest 16 bitowa.
--
Pozdr
Janusz_K
-
42. Data: 2015-11-15 17:58:52
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: Marek <f...@f...com>
On Sun, 15 Nov 2015 16:18:03 +0100, Zbych <z...@o...pl> wrote:
> Na tak, przecież przełączanie wątków można robić na minimum na
> 16-bitach, sorry zapomniałem. Dobrze, że w innych firmach o tej
zasadzie
> nie słyszeli.
Atmega posiada mechanizmy sprzętowego wsparcia przełączania wątków
czy wywłaszczenia cpu? Bo przypominam, że mówimy o Atmedze.
> A co ma długość rejestrów do możliwości _liniowego_ adresowania?
> 8080 to potrafił, Z80 to potrafił, ale widać geniusze z microchipa
na to
> nie wpadli.
Rotfl, jaka jest różnica między łączeniem rejestrów 8 bitowych w
8080 cxy Z80 (nie wiem po co te przykłady skoro mówimy o Atmedze i
PIC) w jakikolwiek sposób aby poruszać się w 16bit przestrzeni
adresowej od użycia rejestru wyboru banku (wyboru starszego bitu w
adresie)? Oba mechanizmy dają taki sam efekt i są tym samym. Ale to
nie oznacza, że są tak samo wydajnymi metodami w porównaniu do
pełnego jednego rejestru 16bitowego, gdzie jest realna (a nie
pośrednia) liniowość w zakresie 16 bit adresacji.
To, że C18 ma problem z odczytem tablic inaczej niż przez wskaźnik
(nie wiem po co robić inny odczyt) to tylko problem tego kompilatora,
jest hitec, jest sdcc a teraz nawet xc8. w tych też ten problem
występuje?
> Czyli mam uC z 4kB RAMu na pokładzie i zrobienie w nim "wielkiej"
> tablicy przekraczającej 256B to przegięcie? Dobrze się czujesz?
Zdefiniuj "większe". Problem jaki podajesz z tą tablicą jest
wydumany, bo zakłada odczyt bez użycia wskaźnika, co w wielu
przypadkach jest niefektywne.
--
Marek
-
43. Data: 2015-11-15 18:04:50
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: Marek <f...@f...com>
On Sun, 15 Nov 2015 17:07:55 +0100, janusz_k <J...@o...pl> wrote:
> Tak i to nawet trzy, do tego dodawanie, odejmowanie od nich liczby
0-63,
> gdzie wynik jest może być np: indexem do tablicy, kopiowanie rej
16bit,
> poza tym lista rozkazów jest 16 bitowa.
A czy nie są to czasem łączone rejestry jak w 8080, przy czym zapis
odczyt i tak jest w 8bit. kawałkach?
--
Marek
-
44. Data: 2015-11-15 18:07:30
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: Marek <f...@f...com>
On Sun, 15 Nov 2015 16:18:03 +0100, Zbych <z...@o...pl> wrote:
> 16-bitach, sorry zapomniałem. Dobrze, że w innych firmach o tej
zasadzie
> nie słyszeli.
No to teraz wiem, kogo konkretnie miał na myśli Sebastian pisząc o
polskich wynalazcach najszybszych na świecie furmanek :-)
--
Marek
-
45. Data: 2015-11-15 19:03:37
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: janusz_k <J...@o...pl>
W dniu 2015-11-15 o 18:04, Marek pisze:
> On Sun, 15 Nov 2015 17:07:55 +0100, janusz_k <J...@o...pl> wrote:
>> Tak i to nawet trzy, do tego dodawanie, odejmowanie od nich liczby
> 0-63,
>> gdzie wynik jest może być np: indexem do tablicy, kopiowanie rej
> 16bit,
>> poza tym lista rozkazów jest 16 bitowa.
>
> A czy nie są to czasem łączone rejestry jak w 8080, przy czym zapis
> odczyt i tak jest w 8bit. kawałkach?
>
Tak są łączone i odczyt w kawałkach ale co to ma za znaczenie? operacje
są robione na obu tzn word i to jest istotne, służą do adresacji
pamięci.
--
Pozdr
Janusz_K
-
46. Data: 2015-11-15 19:17:08
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: janusz_k <J...@o...pl>
W dniu 2015-11-15 o 17:58, Marek pisze:
> On Sun, 15 Nov 2015 16:18:03 +0100, Zbych <z...@o...pl> wrote:
>> Na tak, przecież przełączanie wątków można robić na minimum na
>> 16-bitach, sorry zapomniałem. Dobrze, że w innych firmach o tej
> zasadzie
>> nie słyszeli.
>
> Atmega posiada mechanizmy sprzętowego wsparcia przełączania wątków czy
> wywłaszczenia cpu? Bo przypominam, że mówimy o Atmedze.
Nie.
>
>> A co ma długość rejestrów do możliwości _liniowego_ adresowania?
>> 8080 to potrafił, Z80 to potrafił, ale widać geniusze z microchipa
> na to
>> nie wpadli.
>
> Rotfl, jaka jest różnica między łączeniem rejestrów 8 bitowych w 8080
> cxy Z80 (nie wiem po co te przykłady skoro mówimy o Atmedze i PIC) w
> jakikolwiek sposób aby poruszać się w 16bit przestrzeni adresowej od
> użycia rejestru wyboru banku (wyboru starszego bitu w adresie)? Oba
> mechanizmy dają taki sam efekt i są tym samym. Ale to nie oznacza, że są
> tak samo wydajnymi metodami w porównaniu do pełnego jednego rejestru
> 16bitowego, gdzie jest realna (a nie pośrednia) liniowość w zakresie 16
> bit adresacji.
Kiedy właśnie w atmedze te dwa rejestry zachowują się jak jeden, tylko
operacje są troche ułomne bo dodawać, odejmować można w zakresie 0-63.
Więc w obsłudze jest dużo prostszy bo nie trzeba przełączać banków.
> To, że C18 ma problem z odczytem tablic inaczej niż przez wskaźnik (nie
> wiem po co robić inny odczyt) to tylko problem tego kompilatora, jest
> hitec, jest sdcc a teraz nawet xc8. w tych też ten problem występuje?
>
>
>> Czyli mam uC z 4kB RAMu na pokładzie i zrobienie w nim "wielkiej"
>> tablicy przekraczającej 256B to przegięcie? Dobrze się czujesz?
>
> Zdefiniuj "większe". Problem jaki podajesz z tą tablicą jest wydumany,
> bo zakłada odczyt bez użycia wskaźnika, co w wielu przypadkach jest
> niefektywne.
>
Jedno pobranie nieefektywne?
W atmedze jest to jeden rozkaz 2*word, a ty musisz wpier załądować
rejestr indexowy a później dopiero wczytać daną adresując ją tym
rejestrem, czyli dwie a nawet trzy operacje.
--
Pozdr
Janusz_K
-
47. Data: 2015-11-15 19:17:52
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: janusz_k <J...@o...pl>
W dniu 2015-11-15 o 18:07, Marek pisze:
> On Sun, 15 Nov 2015 16:18:03 +0100, Zbych <z...@o...pl> wrote:
>> 16-bitach, sorry zapomniałem. Dobrze, że w innych firmach o tej
> zasadzie
>> nie słyszeli.
>
> No to teraz wiem, kogo konkretnie miał na myśli Sebastian pisząc o
> polskich wynalazcach najszybszych na świecie furmanek :-)
>
Głośno o tym było :)
--
Pozdr
Janusz_K
-
48. Data: 2015-11-15 19:19:52
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: Sebastian Biały <h...@p...onet.pl>
On 2015-11-15 17:58, Marek wrote:
> Atmega posiada mechanizmy sprzętowego wsparcia przełączania wątków czy
> wywłaszczenia cpu? Bo przypominam, że mówimy o Atmedze.
Atmega nie przeszkadza w wywlaszczaniu.
PIC (stary) przeszkadza w wywłaszczaniu.
Pi x drzwi na tym polega różnica. Oba nie mają żadnego wsparcia
sprzętowego i prawde mowiąc - znacznie większe procesory nie mają. Ważne
żeby nie przeszkadzać.
Prawda jest taka że PICa zaprojektował elektronik zaś AVRa programista.
Widać to po ograniczeniach obu arch.
-
49. Data: 2015-11-15 19:25:35
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: janusz_k <J...@o...pl>
> A nie z rdzeniem ARM? No bo tak na prawdę po co hobbyscie 8 bitowy mcu z
> jego wszystkimi ograniczeniami 8bitowca? Kiedy pojawiły się pic32mx w
> wersji dip28, wygodne w prototypowaniu uznałem, że chrzanić 8bitowce.
> Pomijając wąskie zastosowanie gdzie taki 8bitowiec z XLP (eXtreme Low
> Power) przydaje się w aplikacji zasilanej bateryjnie, to poza tym nie
> widzę zalet w ich stosowaniu w hobby czy w domu i zagrodzie.
Mylisz się, po pierwsze łatwiejszy w nauczeniu, po drugie 95% projektów
amatorów nie wykorzystuje mocy obliczeniowej 8 bitowca a co dopiero 32.
One w sumie bardziej przeszkadzają niż pomagają.
Dopiero skomplikowane obliczenia zmiennoprzecinkowe wymagają 32-bitowca.
Piszę skomplikowane bo widziałem kilka projektów DFT robionych na 8
bitach które sensownie chodziły.
A że naprawiam sprzęt profesjonalny to mam szerszy ogląd co jest
używane, większość sterowników czy prostych terminali chodzi na 8 bitach
:) mocniejsze procki są dopiero w kolorowych terminalach z dotykiem,
falownikach i serwach, nowych plc.
--
Pozdr
Janusz_K
-
50. Data: 2015-11-15 19:44:01
Temat: Re: Prosty klon PicKit2 i procesory PIC32
Od: Zbych <z...@o...pl>
On 15.11.2015 17:58, Marek wrote:
> On Sun, 15 Nov 2015 16:18:03 +0100, Zbych <z...@o...pl> wrote:
>> Na tak, przecież przełączanie wątków można robić na minimum na
>> 16-bitach, sorry zapomniałem. Dobrze, że w innych firmach o tej
> zasadzie
>> nie słyszeli.
>
> Atmega posiada mechanizmy sprzętowego wsparcia przełączania wątków czy
> wywłaszczenia cpu? Bo przypominam, że mówimy o Atmedze.
Czy to co ma AVR wpływa jakoś na brak ograniczeń w PICach?
Nie bardzo rozumiem po co za każdym razem wywlekasz jakiegoś AVRa?
A odpowiadając na pytanie - nie, nie ma sprzętowego wsparcia, ale daje
możliwość przełączania wątków. Antyczna '51 to dawała.
> To, że C18 ma problem z odczytem tablic inaczej niż przez wskaźnik (nie
> wiem po co robić inny odczyt)
Za każdym razem jak pada argument, na który nie masz sensownej
odpowiedzi to pada pytanie "a po co?", "czy avr to ma?", albo jakieś
mądrości o furmankach. Jesteś jakoś uczuciowo związany z PIC?
>> Czyli mam uC z 4kB RAMu na pokładzie i zrobienie w nim "wielkiej"
>> tablicy przekraczającej 256B to przegięcie? Dobrze się czujesz?
>
> Zdefiniuj "większe".
np. 573B.
> Problem jaki podajesz z tą tablicą jest wydumany,
> bo zakłada odczyt bez użycia wskaźnika, co w wielu przypadkach jest
> niefektywne.
To czy ja użyję w sposób jawny wskaźnika, czy nie, nie ma znaczenia.
Kompilator niech pod spodem tak to robi, żeby było efektywnie.
Ja chcę mieć dostęp w liniowy sposób do całej wbudowanej pamięci.