[OSy] Divne konstanty kalista

Josef Reidinger josef.reidinger at seznam.cz
Thu Nov 29 21:10:18 CET 2007


no ja to delam jako >>2)&mask

ale v puvodnim kalistu je tohle
entrylo =((badvaddr >> 6) & cp0_entrylo_pfn_mask) ...
coz moc nechapu proc to tam je, ten shift o sest

Martin Suska napsal(a):
> 
> 
> On Nov 29, 2007 4:01 PM, <Josef.Reidinger at seznam.cz
> <mailto:Josef.Reidinger at seznam.cz>> wrote:
> 
>     Tak sem zjistil ze manualy pro 4K family se teda lisi od ted primo
>     pro 4000 jadro. Problem je ze stale to nefunguje.
>     1) neni mi moc jasny proc je v puvodnim kalistu shift physicky
>     adresy o 6 doleva, kdyz podle manualu jen prvni 2 bity entrylo maji
>     byt prazdny. 
> 
> 
> Neviem, ci dobre rozumiem tvojmu problemu, ale EntryLo0/1 je
> 00-PFN-CCCDVG
>  - cize prve dva bity (pri citani zlava) sú nula a shiftuje sa to <<6
> aby sa preskocili bity CCCDVG, inak by si si cislom napr 0x0005
> presmahol valid bit
>  
> 
> 
>     2) proste to nefunguje a i kdyz maximum v ladeni ceho jsme schopen -
>     tedy vypis tlb tabulky mi moc neosvetli (zadnej specialni bootaci
>     bit neni nastaven) a vyjimky to haze TLBS do general_exception
>     entry - 0
>            entryHi - VPN2 0 ASID 0  (oboje souhlasi, tak proc je to
>     proste nevybere???)
>            entryLo0 - PFN 33664 C 16 D 4 V 2 G 1
>            entryLo1 - PFN 0 C 0 D 0 V 0 G 1
>     dalsi entry jsou v pocatecni inicializaci
>     entryHi - VPN2 0 ASID 255
>            entryLo0 - PFN 0 C 0 D 0 V 0 G 0
>            entryLo1 - PFN 0 C 0 D 0 V 0 G 0
>     diky za jakykoliv help, protoze uz fakt nevim co s tim.
> 
> 
> V tomto druhom prípade, Ti nepomozem, snad niekto iny ;-)
> Možno sa na to iba zle pozerám, ale virtuálna adresa je 0 ? Nakolko
> nastavujes global bit, tak by na ASID'e nemalo záležať. Jedine znovu
> skontrolovať VPN.
>  
> 
> 
>     <  ------------ Původní zpráva ------------
>     <  Od: Lukáš Kopenec <lukaskopenec at seznam.cz
>     <mailto:lukaskopenec at seznam.cz>>
>     <  Předmět: Re: [OSy] Divne konstanty kalista
>     <  Datum: 26.11.2007 18:55:18
>     <  ----------------------------------------
>     <  Ahoj!
>     <
>     <  1) Protože je to maska, maskuje bit č.1 a 2^1 je 2
>     <  2) To samý v bledě modrým :-)
>     <  3) Přečti si ten manuál pořádně. Global bit je sice v TLB v Hi,
>     ale taky je
>     <  tam poznámka, že napříč tomu se určuje jako AND na těchto bitech
>     v EntryLo0
>     <  a EntryLo1, kde je to nejnižší bit
>     <  4) Mapování normálně funguje a dost možná, že až si uděláš jasno
>     v těch
>     <  předchozích 3 bodech a opravíš kód, začne Ti fungovat taky
>     <
>     <  Hodně štěstí :-)
>     <  Lukáš
>     <
>     <  ----- Original Message -----
>     <  From: < Josef.Reidinger at seznam.cz <mailto:Josef.Reidinger at seznam.cz>>
>     <  To: "Operating Systems Course" <osy at dsrg.mff.cuni.cz
>     <mailto:osy at dsrg.mff.cuni.cz>>
>     <  Sent: Monday, November 26, 2007 5:15 PM
>     <  Subject: [OSy] Divne konstanty kalista
>     <
>     <
>     <  > Ahoj, mam trochu zmatek v konstantach kalista
>     <  > 1) proc je cp0_entrylo_v_mask 2 a ne jednicka jak by se zdalo
>     podle jeho
>     <  > pozice z manualu?
>     <  > 2) to samy s dirty bitem
>     <  > 3) proc je cp0_entrylo_g_mask kdyz global(pokud je to on) je v
>     lo misto hi
>     <  > a je jednicka ,teda uplne mimo manual?
>     <  > 4) funguje nekomu mapovani pres tlb? ja to podle manualu
>     korektne vyplnim
>     <  > a ono to hodi TLB exception, ktera jde rovnou do general
>     exception, coz
>     <  > podle manualu znamena, ze neni nastaven valid bit?
>     <  > JR
>     <  >
>     <  > _______________________________________________
>     <  > OSy mailing list
>     <  > OSy at dsrg.mff.cuni.cz <mailto:OSy at dsrg.mff.cuni.cz>
>     <  > https://dsrg.mff.cuni.cz/mailman/listinfo/osy
>     <https://dsrg.mff.cuni.cz/mailman/listinfo/osy>
>     <  >
>     <
>     <
>     <  _______________________________________________
>     <  OSy mailing list
>     <  OSy at dsrg.mff.cuni.cz <mailto:OSy at dsrg.mff.cuni.cz>
>     <   https://dsrg.mff.cuni.cz/mailman/listinfo/osy
>     <
>     <
>     <
> 
>     _______________________________________________
>     OSy mailing list
>     OSy at dsrg.mff.cuni.cz <mailto:OSy at dsrg.mff.cuni.cz>
>     https://dsrg.mff.cuni.cz/mailman/listinfo/osy
> 
> 
> 
> 
> -- 
> ---------- ---------- ---------- ---------- ----------
> Prosim piste odpovede na zaciatok mailu.
> Please insert your answer at the begining of the e-mail
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> OSy mailing list
> OSy at dsrg.mff.cuni.cz
> https://dsrg.mff.cuni.cz/mailman/listinfo/osy




More information about the NSWI004 mailing list