2012年12月13日 星期四
2012年11月8日 星期四
工作韌體心得分享
最近工作有一點倦怠說不上有真正的理由,也不知道自己的想法,
第一個工作 接觸了dtv solution 算是 embedded system,
他有掛了 Nucleus RTOS,主要工作可以分兩個部份,
其中firmware 部份像是EDID control和電路板重新設定 去control
regsiter像是gpio、panel driver、input source,software 就偏向
customer factory and application function,一個products
必經EVT、BVT、DVT、PVT、MP,在這過程出現的bug就全包,
也會調整color temperatrue、gamma、brightness阿哩阿咱的,
但當代理商的fae重點在,分析bug成功複製,當你能成功分析bug,
在哪個點code的哪一行出現,其實就大概可以修掉,但呼叫到原廠包
好的sdk,還是只能請原廠解決,被包起來的部份通常是reg control,
也會因為有些bug可能會破壞到code style,要修改可以但要一定回報
原廠請他們在提供底層sdk改進此問題,以省掉後續code的雜亂不堪問題,
這家公司真的是我很感謝的公司,教了很多基礎理論 像是Composite
DVI S-Video hdmi YPbPr dvb-t atsc ntsc pal signal,熱情的前輩
給了很好的方向,也花了很多時間traning我,聽我用破破爛爛的英文報告
,告訴我哪邊觀念有問題,讓我在後期對tv test有很大的功力提升,
加上有理論在實做的過程真的多了很多東西可以思考,而變成邏輯式推論,
並且在同事互相share information,coding還是針對bug test真的進步很多。
ref : http://funlife1.pixnet.net/blog/post/28096593-%5B%E5%BF%83%E5%BE%97%5D%E6%88%91%E7%9A%84-%E9%9F%8C%E9%AB%94%E5%B7%A5%E7%A8%8B%E5%B8%AB-%E4%B8%80%E5%B9%B4%E5%8D%8A%E5%B7%A5%E4%BD%9C%E5%BF%83%E5%BE%97
2012年11月7日 星期三
C語言typedef的用法--解惑
需要復習一下各種運算符的優先順序和結合順序了,順便找本書看看就夠了。
#1:int* (*a[5])(int, char*);
首先看到標識符名a,“[]”優先級大於“*”,a與“[5]”先結合。所以a是一個數組,這個數組有5個元素,每一個元素都是一個指針,指針指向“(int, char*)”,對,指向一個函數,函數參數是“int, char*”,返回值是“int*”。完畢,我們幹掉了第一個紙老虎。
#2:void (*b[10]) (void (*)());
b是一個數組,這個數組有10個元素,每一個元素都是一個指針,指針指向一個函數,函數參數是“void (*)()”【註1】,返回值是“void”。完畢!
註1:這個參數又是一個指針,指向一個函數,函數參數為空,返回值是“void”。
#3:double(*)()(*pa)[9];
pa是一個指針,指針指向一個數組,這個數組有9個元素,每一個元素都是“double(*)()”【也即一個指針,指向一個函數,函數參數為空,返回值是“double”】。
reference :1http://king41.blog.hexun.com.tw/56049687_d.html
2012年9月25日 星期二
完全看懂 ARM 處理器 歷史、架構一次看透
RISC與CISC的差異
處理器的指令集可簡單分為2種,CISC(complex instruction set computer)以及RISC(reduced instruction set computer)。一開始的處理器都是CISC架構,隨著時間演進,有越來越多的指令集加入。由於當時編譯器的技術並不純熟,程式都會直接以機器碼或是組合語言寫成,為了減少程式設計師的設計時間,逐漸開發出單一指令,複雜操作的程式碼,設計師只需寫下簡單的指令,再交由CPU去執行。但是後來有人發現,整個指令集中,只有約20%的指令常常會被使用到,約佔整個程式的80%;剩餘80%的指令,只佔整個程式的20%。於是1979年美國加州大學柏克萊分校的David Patterson教授提出了RISC的想法,主張硬體應該專心加速常用的指令,較為複雜的指令則利用常用的指令去組合。
引述文件:
http://www.techbang.com/posts/10678-fully-understand-arm-processors-cisc-and-risc-are-what-history-structure-a-see-through-the-computer-96-issues-cover-story-the-king
2012年8月24日 星期五
UEFI 灌 WIN7 X64 bye Usb key + DVD windows 7 native
Your USB drive must also contain the directory and file: \EFI\Boot\BOOTX64.EFI. This is the EFI installation bootloader extension.
If you do not have this directory, or file on your USB drive, fear not. This is how you create it.
First, create a new directory called Boot inside the \EFI directory
You will then need to copy all of the files from the \EFI\microsoft\boot directory, up one level into the directory you just created (\EFI\Boot).
Next, use 7-Zip to open the archive located at: *:\sources\install.wim (* is the drive letter of your USB key that holds the Windows 7 installation files)
Inside the archive, find the file located in folder "1" \Windows\Boot\EFI\bootmgfw .efi.
Copy this file to *:\EFI\Boot\ location you created earlier. (Not in 7-zip) (This file is also available from any current windows 7 installation). It is located in the C:\Windows\Boot\EFI directory.
After copying the file to the EFI\Boot directory, rename the file in *:\EFI\Boot\bootmgfw.efi toBOOTX64.EFI. You should now have an EFI bootloader directory for Windows called *:\EFI\Boot\, with all of the files copied from the EFI\microsoft\Boot. Directory, and the newly named BOOTX64.EFI
Your install media (DVD/USB) must be inserted into your PC prior to powering it up. This will allow your UEFI to register your device (DVD drive/USB drive) as a UEFI boot enabled device.
1 :
UEFI Windows 7 64Bits installation using a USB drive
ref ->
http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Windows/Windows_7/Q_27525576.html
notice :
i.Boot menu in Bios , choice advance CSM enable, then boot USB key to install Windows 7.
ii.When boot the stage of choosing partition disk in error driver , input DVD\CD ROM , that can pass.
2:
ref ->
http://chenweichi.blogspot.tw/2012/05/windows-8-windows-to-go-usb.html
ps:
製作完 Uefi USB key boot x64 win 8
都複製到USB 上, disk format is FAT32
windows 7 , windows 8 資料夾都直接複製貼上.
唯一要變動只是 --> BootX64.efi <--
即可安裝 雙作業系統 win7 x64 win7 x32 , window 8 9200
If you do not have this directory, or file on your USB drive, fear not. This is how you create it.
First, create a new directory called Boot inside the \EFI directory
You will then need to copy all of the files from the \EFI\microsoft\boot directory, up one level into the directory you just created (\EFI\Boot).
Next, use 7-Zip to open the archive located at: *:\sources\install.wim (* is the drive letter of your USB key that holds the Windows 7 installation files)
Inside the archive, find the file located in folder "1" \Windows\Boot\EFI\bootmgfw
Copy this file to *:\EFI\Boot\ location you created earlier. (Not in 7-zip) (This file is also available from any current windows 7 installation). It is located in the C:\Windows\Boot\EFI directory.
After copying the file to the EFI\Boot directory, rename the file in *:\EFI\Boot\bootmgfw.efi toBOOTX64.EFI. You should now have an EFI bootloader directory for Windows called *:\EFI\Boot\, with all of the files copied from the EFI\microsoft\Boot. Directory, and the newly named BOOTX64.EFI
Your install media (DVD/USB) must be inserted into your PC prior to powering it up. This will allow your UEFI to register your device (DVD drive/USB drive) as a UEFI boot enabled device.
1 :
UEFI Windows 7 64Bits installation using a USB drive
ref ->
http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Windows/Windows_7/Q_27525576.html
notice :
i.Boot menu in Bios , choice advance CSM enable, then boot USB key to install Windows 7.
ii.When boot the stage of choosing partition disk in error driver , input DVD\CD ROM , that can pass.
2:
Windows 8 - 製作 Windows To Go - USB 隨身系統碟
http://chenweichi.blogspot.tw/2012/05/windows-8-windows-to-go-usb.html
ps:
製作完 Uefi USB key boot x64 win 8
都複製到USB 上, disk format is FAT32
windows 7 , windows 8 資料夾都直接複製貼上.
唯一要變動只是 --> BootX64.efi <--
即可安裝 雙作業系統 win7 x64 win7 x32 , window 8 9200
2012年8月14日 星期二
訂閱:
文章 (Atom)