[video member=miotatsu stream_platform=twitch project=riscy title="Studying the OTP" vod_platform=youtube id=WRygxZ85z8c annotator=Miblo] [0:08][Recap with the determination to follow Megan's advice[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434] to print out the entire OTP Contents][:research] [2:13][Enable print_instructions() to print the entire OTP Contents[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf]] [8:21][:Run our program to see how our OTP Contents compares with the Default OTP Contents table[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf]] [12:00][Make print_instructions() print the OTP start, and from the board identifier to the OTP end] [13:32][:Run our program to see our incorrectly read output, consider that our board is running too fast and report our findings[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434]] [19:13][Scan the documentation for OTP information] [21:10][Read about One-Time Programmable (OTP) Memory in the Platform Reference Manual[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/] and the E3 Coreplex Manual[ref site="SiFive Developers" page="E3 Coreplex Manual" url=https://static.dev.sifive.com/pdfjs/web/viewer.html?file=https://static.dev.sifive.com/SiFive-E3-Coreplex-v1.2.pdf]][:research] [27:06][Read about the IOREF Jumper in the Getting Started Guide[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf]][:hardware :research] [29:20][Continue reading about the OTP[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/]][:research] [32:30][Consult Megan's reply, suggesting to try the led_fade demo[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434]] [34:28][Read the remaining documentation on the OTP's Programmed-I/O lock register and Programmed-I/O Sequencing[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/]][:research] [41:35][Try Megan's suggestion, to use the led_fade demo as a basis for printing the OTP Contents[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434]] [45:51][:Run our program to see some reasonable values, and compare them with the Default OTP Contents table[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf]] [47:22][Discover when our board was burned, post this information on the forums[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434] and note that the OTP needs to be read at 16MHz or while using the clock divider] [49:11][Continue to compare our values with the Default OTP Contents table[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf] and post our complete OTP Contents[ref site="SiFive Forums" page="Lots of Questions… (RISCY BUSINESS Day 21)" url=https://forums.sifive.com/t/lots-of-questions-riscy-business-day-21/434]] [55:04][OTP read sequence[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/]][:blackboard :research] [1:00:07][OTP lock sequence[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/]][:blackboard :research] [1:04:07][That's everything] [/video]