📄 m68k.txt
字号:
♂ TOPPERS/JSPカ〖ネル ユ〖ザズマニュアル ♂ ∈M68040 タ〖ゲット巴赂婶∷ ∈Release 1.3滦炳·呵姜构糠: 12-Nov-2001∷------------------------------------------------------------------------ TOPPERS/JSP Kernel Toyohashi Open Platform for Embedded Real-Time Systems/ Just Standard Profile Kernel Copyright (C) 2000,2001 by Embedded and Real-Time Systems Laboratory Toyohashi Univ. of Technology, JAPAN 惧淡螟侯涪荚は·Free Software Foundation によって给山されている GNU General Public License の Version 2 に淡揭されている掘凤か·笆 布の(1)×(4)の掘凤を塔たす眷圭に嘎り·塑ソフトウェア∈塑ソフトウェ アを猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖恃ˇ浩芹邵∈笆布· 网脱と钙ぶ∷することを痰浸で钓满するˉ (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 スコ〖ド面に崔まれていることˉ (2) 塑ソフトウェアを浩网脱材墙なバイナリコ〖ド∈リロケ〖タブルオブ ジェクトファイルやライブラリなど∷の妨で网脱する眷圭には·网脱 に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟侯涪山绩· この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ (3) 塑ソフトウェアを浩网脱稍材墙なバイナリコ〖ドの妨または怠达に寥 み哈んだ妨で网脱する眷圭には·肌のいずれかの掘凤を塔たすことˉ (a) 网脱に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟侯 涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ (b) 网脱の妨轮を·侍に年める数恕によって·惧淡螟侯涪荚に鼠桂する ことˉ (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 巢からも·惧淡螟侯涪荚を倘勒することˉ 塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚は· 塑ソフトウェアに簇して·その努脱材墙拉も崔めて·いかなる瘦沮も乖わ ないˉまた·塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じたい かなる禄巢に簇しても·その勒扦を砷わないˉ @(#) $Id: m68k.txt,v 1.8 2002/04/14 15:27:12 hiro Exp $------------------------------------------------------------------------1ˉM68040 タ〖ゲット巴赂婶の车妥1.1 タ〖ゲットシステムと倡券茨董M68040プロセッサのタ〖ゲットシステムとしては·(臭)排缓澜の DVE-68K/40CPUボ〖ド∈CPU: MC68LC040∷のみをサポ〖トしているˉ倡券茨董には·GCC などの GNU倡券茨董を脱い·オブジェクトファイルフォ〖マットは ELF を筛洁とするˉ1.2 サポ〖トする怠墙の车妥M68040巴赂の怠墙として·充哈みマスクの恃构ˇ徊救∈chg_ixx·get_ixx∷をサポ〖トしているˉまた·DVE-68K/40 CPUボ〖ド巴赂の怠墙として·拉墙删擦脱システム箕癸徊救怠墙∈vxget_tim∷をサポ〖トしているˉ充哈みの敦贿と钓材∈dis_int·ena_int∷はサポ〖トしていないˉ1.3 戮のタ〖ゲットへのポ〖ティング附バ〖ジョンでは·FPU を积たない MC68LC040 のみをサポ〖トしているˉFPU を脱いない眷圭には·FPU柒垄の M68040 にも努脱材墙なはずであるˉFPUを宠脱したい眷圭には·ディスパッチャで FPUレジスタを瘦赂】牲耽する涩妥があるなど·笺闯の猖陇が涩妥であるˉ戮の m68k 废误のプロセッサへのポ〖ティングについては·マスタ〖スタックと侍に充哈みスタックを积つ M68020 笆惯のプロセッサへは孺秤弄推白にポ〖ティング材墙と蛔われるが·それより涟のプロセッサへのポ〖ティングは烫泡であると徒鳞されるˉ2ˉM68040 プロセッサ巴赂婶の怠墙この泪では·カ〖ネルおよびシステムサ〖ビスの怠墙の面で·M68040巴赂の婶尸について豺棱するˉ2.1 デ〖タ房signed int房および unsigned int房のサイズは 32ビットであるˉ2.2 充哈み瓷妄怠墙と充哈みハンドラカ〖ネル瓷妄嘲の充哈みは NMI のみであるˉよって·CPUロック觉轮や介袋步ル〖チン柒では·NMI 笆嘲の充哈みはすべて敦贿されているˉ恶挛弄には·IPM∈Interrupt Priority Mask∷が 7 に肋年されるˉDEF_INH で回年する充哈みハンドラ戎规∈inhno∷は·M68040 での毋嘲ベクタ戎规を山し·そのデ〖タ房∈INHNO∷は unsigned int房に年盗されているˉDEF_INH で·毋嘲ベクタ戎规として铜跟でない猛や·嘲婶充哈みに滦炳しない戎规を回年した眷圭の瓢侯は瘦沮されないˉM68040巴赂の怠墙として·SR∈Status Register∷面の IPM∈InterruptPriority Mask∷の猛を恃构するためのサ〖ビスコ〖ル chg_ipm と·徊救するためのサ〖ビスコ〖ル get_ipm をサポ〖トしているˉなお·IPM の猛を山すデ〖タ房 IPM は·unsigned int房に年盗されているˉこれらのサ〖ビスコ〖ルは·タスクコンテキストで CPUロック豺近觉轮の眷圭にのみ钙び叫すことができるˉchg_ipm により IPM を 0 笆嘲∈すなわち·部らかの充哈みが敦贿されている觉轮∷にした眷圭でも·ディスパッチは敦贿されず·chg_ipm により恃构した IPM の猛は·ディスパッチ稿のタスクに苞き费がれるˉ毋えば·あるタスクで IPM を 1 に恃构した稿·部らかの充哈みにより侍のタスクに磊り仑わると·磊り仑わった稿のタスクでも IPM は 1 になるˉただし·IPM を 0 笆嘲に肋年していても·悸乖できるタスクがなくなった眷圭には IPM は办箕弄に 0 になるˉこれは·M68040 の炭吾セットからくる扩嘎祸灌であるˉchg_ipm をサポ〖トするために·充哈みハンドラの叫掐庚借妄などにオ〖バヘッドを栏じているˉそこで·SUPPORT_CHG_IPM というマクロにより·これらのサ〖ビスコ〖ルをサポ〖トするかどうかを磊り仑えられるようにしているˉSUPPORT_CHG_IPM は·cpu_config.h の面で #define されているˉM68040巴赂の充哈みマスクの恃构ˇ徊救のためのサ〖ビスコ〖ルの慌屯は肌の奶りˉ(1) chg_ipm 充哈みマスクの恃构≮C咐胳API≯ ER ercd = chg_ipm(IPM ipm);≮パラメ〖タ≯ IPM ipm 肋年すべき IPM の猛≮リタ〖ンパラメ〖タ≯ ER ercd エラ〖コ〖ド≮エラ〖コ〖ド≯ E_CTX コンテキストエラ〖 E_PAR パラメ〖タエラ〖∈ipm が稍赖∷≮怠墙≯IPM∈Interrupt Priority Mask∷を ipm で回年された猛に肋年するˉ回年した猛が 0×6 笆嘲の眷圭·E_PARエラ〖となるˉIPM を 1×6 に肋年した眷圭でも·ディスパッチは敦贿されないˉまた·肋年した IPM の猛は·ディスパッチ稿も苞き费がれるˉディスパッチを敦贿したい眷圭には·dis_dsp と驶脱すればよいˉなお·このサ〖ビスコ〖ルを脱いて·IPM を 7 ∈すべての充哈みを敦贿∷に肋年することはできないˉIPM を 7 にしたい眷圭には·loc_cpu を蝗うべきであるˉこのサ〖ビスコ〖ルは·タスクコンテキストで CPUロック豺近觉轮の箕のみ钙び叫すことができるˉ润タスクコンテキストや CPUロック觉轮で钙び叫した眷圭には·E_CTXエラ〖となるˉ(2) get_ipm 充哈みマスクの徊救≮C咐胳API≯ ER ercd = get_ipm(IPM *p_ipm);≮パラメ〖タ≯ なし≮リタ〖ンパラメ〖タ≯ ER ercd エラ〖コ〖ド IPM ipm 附哼の IPM の猛≮エラ〖コ〖ド≯ E_CTX コンテキストエラ〖
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -