{"data":[{"id":1,"code":"CO221","name":"Digital Design","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"To introduce digital electronics with emphasis on practical design techniques for digital circuits, analysis of static and dynamic behaviour of digital circuits and optimized circuit implementation; its principles in Boolean algebra and the design of combinational and sequential circuits with implementation at logic circuit level. Also to teach how simple combinational and sequential modules are used to build complete systems, reflecting real-world digital design.","time_allocation":{"lecture":30,"tutorial":null,"practical":16,"design":null,"assignment":14,"independent_learning":null},"marks_allocation":{"practicals":30,"tutorials":10,"quizzes":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":40},"ilos":{"general":[],"knowledge":["Perform Boolean manipulation, circuit minimization and synthesis of sequential and combinational circuits.","Analyse static and dynamic behaviour of digital circuits."],"skills":["Draw up the formal requirement specification starting from an informal requirement.","Design and implement basic combinational and sequential circuits with considerations to common problems such as hazards, race conditions and instability in these circuits.","Demonstrate the conformance of a design to its specifications including temporal behaviour."],"attitudes":["The student must have developed sufficient confidence to be able to undertake digital circuit design for real-world engineering requirements by acquiring any further domain knowledge through self-study.","Discourage trial and error implementation of the circuits."]},"references":["Morris Mano, Digital Design, 3rd Edition","William James Dally and R. Curtis Harting, Digital Design - A Systems Approach"],"modules":[{"topic":"Introduction to digital logic","description":"Digital signals, Digital Logic, Computers and Digital Systems, Purpose and role of digital logic in computer engineering, CMOS logic circuits","time_allocation":{"lecture":"1","tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Number systems and digital logic","description":"Binary number system , Number Base Conversions, A Representation of Negative Numbers, Binary arithmetic, Levels of Description of Logic Networks, Basic logic gates, Positive and negative logic","time_allocation":{"lecture":"3","tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Combinational logic circuits","description":"Boolean algebra, Boolean laws and theorems, Sum-of-products and Product-of-sums methods, Simplifications of Boolean expressions, Truth tables, Karnaugh Maps, Quine Mc-clusky method, Don\u2019t care combinations, Elimination of timing Hazards","time_allocation":{"lecture":"6","tutorial":null,"practical":"2","design":null,"assignment":null,"independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Modular design of combinational circuits","description":"Introduction of Levels of Integration, Multiplexers, De-multiplexers, Encoders, Decoders, read only memory (ROM), programmable logic arrays","time_allocation":{"lecture":"4","tutorial":null,"practical":"5","design":null,"assignment":"5","independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Sequential logic circuits and memory elements","description":"SR flip flops, Gated, edge-triggered and Master-slave operation, JK flip flop, D flip-flop, T flip-flop, Registers, Serial\/Parallel conversion, CodesError detection and correction","time_allocation":{"lecture":"6","tutorial":null,"practical":"4","design":null,"assignment":"2","independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Design of synchronous sequential circuits","description":"Analysis of Synchronous circuits, Mealy-Moore Networks and Models, State diagrams and state tables State minimization, State assignment, Assignment Rules, Next state and output equation realization, Design of Counters, ROM utilization for Sequential circuits","time_allocation":{"lecture":"5","tutorial":null,"practical":"4","design":null,"assignment":"4","independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Analysis and design of asynchronous sequential circuits","description":"Analysis of Asynchronous circuits, Design Procedure, Flow tables, Reduction of state and flow tables, Race free State assignment, Hazards in asynchronous circuits","time_allocation":{"lecture":"5","tutorial":null,"practical":"4","design":null,"assignment":null,"independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"},{"topic":"Digital circuit design and implementation","description":"Solving a relatively complex problem via self-study and consolidating the knowledge acquired","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":"6","independent_learning":null},"created_at":"2024-10-12T12:18:24.000000Z","updated_at":"2024-10-12T12:18:24.000000Z"}],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO221","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/1"},"created_at":"2024-10-12T12:13:20.000000Z","updated_at":"2024-10-12T12:17:51.000000Z"},{"id":2,"code":"CO2010","name":"Digital Circuits Design","content":null,"credits":4,"type":"Core","semester_id":13,"academic_program":{"category":"undergraduate","version":2,"curriculum_name":"Curriculum - Effective from E22"},"teaching_methods":"Classroom lectures, tutorial discussions and in-class assignments","objectives":"To introduce digital electronics with emphasis on practical design techniques for logic circuits, analysis of static and dynamic behavior of logic circuits and optimized circuit implementation with its principles in Boolean algebra.\n\nTo introduce the design of combinational and sequential logic circuits with gate level implementation.\n\nTo teach how simple combinational and sequential modules are used to build complete systems, reflecting real-world digital design.","time_allocation":{"lecture":34,"tutorial":2,"practical":20,"design":28,"assignment":null,"independent_learning":116},"marks_allocation":{"practicals":60,"quizzes":null,"assignments":null,"tutorials":null,"projects":null,"participation":null,"mid_exam":null,"end_exam":40},"ilos":{"general":["Perform Boolean manipulations, circuit minimization and synthesis of sequential and combinational circuits","Describe static and dynamic behavior of digital circuits","Construct the formal requirement specification starting from an informal requirement","Design basic combinational and sequential circuits with considerations to common problems such as hazards, race conditions and instability in these circuits","Implement combinational and sequential logic circuits using logic ICs, as well as using a hardware description language and programmable logic","Demonstrate the conformance of a design to its specifications including temporal behavior"],"knowledge":[],"skills":[],"attitudes":[]},"references":["Morris Mano, Digital Design, 3rd Edition","William James Dally and R. Curtis Harting, Digital Design - A Systems Approach"],"modules":[{"topic":"Introduction to logic circuits design","description":"Purpose and role of logic circuits in computer systems, use of Boolean logic and basic logic gates in circuit design, levels of integration, overview of logic circuits design flow, digital electronic signals and different logic families.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Number systems and data representation","description":"Binary and hex number systems, binary representation of unsigned and signed decimals, binary arithmetic, character representation.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Boolean Logic","description":"Boolean logic operations, Boolean algebra laws and theorems, Boolean expressions, sum-of-products, and product-of-sums methods, simplifications of Boolean expressions, truth tables, Karnaugh maps, Quine Mc-Cluskey method, \u201cdon\u2019t care\u201d combinations.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Basic logic circuits","description":"Physical logic gate implementations for basic and derived Boolean operations, high-impedance condition and tri-state logic realizing Boolean expressions using two-level gate forms and multi-level gates, positive\/negative\/mixed-logic design conventions, physical properties of logic gates and design tradeoffs, interfacing different logic families, Hardware Description Languages and logic synthesis process, simulation and verification.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Modular design of combinational logic circuits","description":"Multiplexers, de-multiplexers, encoders, decoders, adders, subtractors, shifters, comparators, modular Arithmetic & Logic Unit.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Modular design of sequential logic circuits and memory elements","description":"Latches, gated\/edge-triggered\/master-slave operation, flip-flops, timing characteristics, registers, counters, shift-registers, serial-parallel conversion, timing diagrams, error detection and correction techniques, static memory, dynamic memory.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Synchronous sequential logic circuits design","description":"Analysis of synchronous circuits, Finite State Machine (FSM) models, state diagrams and state tables, FSM timing diagrams, state minimization, state assignment, assignment rules, next state and output equation realization","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Asynchronous sequential logic circuits design","description":"Analysis of asynchronous circuits, design procedure, flow tables, reduction of state and flow tables, and race-free state assignment.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"},{"topic":"Programmable Logic","description":"History of programmable logic, programmable logic architectures and their basic elements.","time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"created_at":"2024-11-13T15:39:44.000000Z","updated_at":"2024-11-13T15:39:44.000000Z"}],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO2010","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/2"},"created_at":"2024-11-13T14:05:36.000000Z","updated_at":"2024-11-13T14:05:36.000000Z"},{"id":3,"code":"CO222","name":"Programming Methodology","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"Problem solving, Storing and naming data and operators, Control flow, Using standard library functions, Structured programming, Static allocation, References (pointers), Linked structures, Memory layout, Language tool-chains, Support tools","time_allocation":{"lecture":24,"tutorial":8,"practical":14,"design":null,"assignment":12,"independent_learning":null},"marks_allocation":{"practicals":20,"quizzes":null,"assignments":null,"tutorials":null,"projects":20,"participation":null,"mid_exam":20,"end_exam":40},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nConvert a simple well defined problem into a correct computer program using a typical Clike programming language.\nUnderstand the logic of a simple piece of code and reason about it"],"skills":["At the end of this course, a student will be able to;\nPractice good coding techniques (naming conventions, indentation, comments, organizing operations into functions, modularization).\nVisualise program control flow and memory structures.\nUse assertions and debugging to understand and debug programs"],"attitudes":["Inculcate a disciplined attitude towards programming in the small.\nDiscourage trial-and-error programming"]},"references":["J.D. Ulman, Foundations of Computer Science C edition"],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO222","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/3"},"created_at":"2025-04-08T07:32:17.000000Z","updated_at":"2025-04-08T07:32:17.000000Z"},{"id":4,"code":"CO223","name":"Computer Communication Networks 1","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":30,"quizzes":null,"assignments":null,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":50},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["J. F. Kurose and K. W. Ross. Computer Networking; A Top Down Approach."],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO223","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/4"},"created_at":"2025-04-08T07:34:41.000000Z","updated_at":"2025-04-08T07:34:41.000000Z"},{"id":5,"code":"EE282","name":"Network Analysis for Computer Engineering","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"To provide knowledge required to analyse basic electrical networks with passive components so that students will be able to understand and analyse different electrical circuits under steady state and transient conditions and dc and ac excitations.\n","time_allocation":{"lecture":45,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":20,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":50},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Network Analysis 3rd Edition, M.E. Van Valkenburg, Prentice Hall\n                                                                                           \nLinear and Non-Linear circuits, Leon O. Chua, Charles A. Desoer, Ernest S. Kuh, Mcgraw Hill"],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EE282","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/5"},"created_at":"2025-04-08T07:37:31.000000Z","updated_at":"2025-04-08T07:37:31.000000Z"},{"id":6,"code":"EM211","name":"Ordinary Differencial Equations","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":60},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":[],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EM211","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/6"},"created_at":"2025-04-08T07:39:07.000000Z","updated_at":"2025-04-08T07:39:07.000000Z"},{"id":7,"code":"EM213","name":"Probability & Statistics","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":24,"tutorial":4,"practical":null,"design":null,"assignment":4,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":60},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nDescribe and apply basic concepts of probability and statistics."],"skills":["At the end of this course, a student will be able to;\nModel and analyze real world problems dealing with uncertainty using the discrete and the continuous random variables"],"attitudes":["Apply concepts of sampling distributions and point estimation for statistical inference and testing hypothesis related to decision making"]},"references":["D.C. Montgomery and G.C. Runger (2007). Applied Statistics and Probability for Engineers. 4th Edition (or any later edition), John Wiley and Sons, Inc\nJay L. Devore, Probability and Statistics for Engineering and the Sciences, 8th edition, (2010),Cengage learning."],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EM213","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/7"},"created_at":"2025-04-08T07:42:00.000000Z","updated_at":"2025-04-08T07:42:00.000000Z"},{"id":8,"code":"EM214","name":"Discrete Mathematics","content":null,"credits":3,"type":"Core","semester_id":1,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":36,"tutorial":9,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":60},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Kenneth H. Rosen, Discrete Mathematics & It's Applications seventh edition"],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EM214","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/8"},"created_at":"2025-04-08T07:43:41.000000Z","updated_at":"2025-04-08T07:43:41.000000Z"},{"id":9,"code":"CO224","name":"Computer Architecture","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"To teach the elements of a computer and how they are organized and explain how instructions of a program will be executed by the microprocessor and how performance can be evaluated and enhanced so as to widen the vision of students in understanding programs behaviour on a computer system.","time_allocation":{"lecture":29,"tutorial":4,"practical":14,"design":null,"assignment":10,"independent_learning":null},"marks_allocation":{"practicals":20,"quizzes":null,"assignments":20,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":40},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nRepresent and manipulate numbers in different formats.\nDescribe the elements of a computer such as microprocessor, cache, memory and system buses.\nExplain the memory hierarchy and how it operates.\nDescribe multiprocessor systems, SIMD, GPU and Vector and elaborate their importance.\nDesign and analyse single-, multi-cycle and pipelined processors.\nAnalyse issues related to system performance."],"skills":["At the end of this course, a student will be able to;\nDesign architectural solutions and describe designs using an HDL.\nUse simulator to test a designed processor."],"attitudes":["Gain appreciation of computer systems and how they are built and tested using tools."]},"references":["David Patterson, John L. Hennessy, Computer Organization and Design; The Hardware\/Software Interface, 4th Edition"],"modules":[],"prerequisites":[{"id":1,"code":"CO221","name":"Digital Design","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO221","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/1"}},{"id":3,"code":"CO222","name":"Programming Methodology","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO222","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/3"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO224","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/9"},"created_at":"2025-04-15T09:45:26.000000Z","updated_at":"2025-04-15T09:45:26.000000Z"},{"id":10,"code":"CO225","name":"Software Construction","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"Use a problem-based approach to introduce the tools and techniques afforded by high-level languages, standard libraries and operating systems so that students will be able to use these primitives while constructing relatively large software.","time_allocation":{"lecture":25,"tutorial":6,"practical":20,"design":null,"assignment":8,"independent_learning":null},"marks_allocation":{"practicals":30,"quizzes":null,"assignments":null,"tutorials":null,"projects":30,"participation":null,"mid_exam":null,"end_exam":40},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nChoose an appropriate data collection for efficiently representing a problem's data and its associated computations.\nApply declarative programming to data-intensive problems.\nUse objects or algebraic data types to construct a suitable data representation for problems involving trees and graphs.\nIdentify opportunities for concurrency in existing code or a problem description.\nCleanly separate user interface and input\/output concerns from core program logic."],"skills":["At the end of this course, a student will be able to;\nScan and parse unstructured and structured textual formats to extract data.\nTraverse a linked data structure to perform a computation.\nWrite a simple network client (e.g. web crawler).\nBuild programs usable via multiple interfaces (command-line, GUI.)\nWrite secure, testable and modular code.\n"],"attitudes":["Use the right tool\/technique for the job.\nDo one thing and do it well (UNIX \u201ctiny tools\u201d philosophy)."]},"references":["Mark Pilgrim, Dive into Python 3; http:\/\/www.diveinto.org\/python3\/\nSoftware Carpentry Lessons; http:\/\/software-carpentry.org\/v4\/\nBrad Miller and David Ranum, Problem Solving with Algorithms and Data Structures; http:\/\/interactivepython.org\/runestone\/static\/pythonds\/index.html"],"modules":[],"prerequisites":[{"id":3,"code":"CO222","name":"Programming Methodology","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO222","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/3"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO225","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/10"},"created_at":"2025-04-15T09:48:08.000000Z","updated_at":"2025-04-15T09:48:08.000000Z"},{"id":11,"code":" CO226","name":" Database Systems","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":31,"tutorial":4,"practical":12,"design":null,"assignment":8,"independent_learning":null},"marks_allocation":{"practicals":10,"quizzes":null,"assignments":null,"tutorials":null,"projects":20,"participation":null,"mid_exam":20,"end_exam":50},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems 7th Edition, 2016\nRaghu Ramakrishnan and Johannes Gehrke, Database Management Systems, 3rd Edition, McGrawHill, 2004"],"modules":[],"prerequisites":[{"id":3,"code":"CO222","name":"Programming Methodology","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO222","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/3"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/+CO226","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/11"},"created_at":"2025-04-15T09:50:14.000000Z","updated_at":"2025-04-15T09:50:14.000000Z"},{"id":12,"code":"EE285","name":"Electronics I","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"To introduce commonly used electronics components, their operations, characteristics and practical use for designing electronic circuits. At the end of this course students should be able to implement single stage amplifiers, use a BJT as a switch and explain the behavior of the circuit, select a suitable OP-Amp for a given application and implement OP-Amp circuits for common applications.","time_allocation":{"lecture":30,"tutorial":3,"practical":21,"design":null,"assignment":3,"independent_learning":null},"marks_allocation":{"practicals":20,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":50},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nDescribe commonly used electronic components.\nDescribe their operations and characteristics.\nDescribe their applications."],"skills":["At the end of this course, a student will be able to;\nObtain characteristics of electronic components experimentally.\nSelect suitable components to design a given electronic circuit.\nDesign simple circuits using electronic components."],"attitudes":["At the end of the course, students should be able to appreciate the different types of electronic components and their applicability for building different types of electronic circuits"]},"references":["Millman and Halkias, Integrated Electronics\n"],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EE285","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/12"},"created_at":"2025-04-15T09:52:35.000000Z","updated_at":"2025-04-15T09:52:53.000000Z"},{"id":13,"code":"EM212","name":"Calculus II","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":36,"tutorial":9,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":60},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":[],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EM212","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/13"},"created_at":"2025-04-15T09:54:07.000000Z","updated_at":"2025-04-15T09:54:07.000000Z"},{"id":14,"code":"EM215","name":"Numerical Methods","content":null,"credits":3,"type":"Core","semester_id":2,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":31,"tutorial":4,"practical":null,"design":null,"assignment":20,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":30,"end_exam":60},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Steven C. Chapra, Raymond P. Canale (2015). Numerical methods for engineers. 7th edition, McGraw-Hill publishers, New York."],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/EM215","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/14"},"created_at":"2025-04-15T09:55:15.000000Z","updated_at":"2025-04-15T09:55:15.000000Z"},{"id":15,"code":"CO227","name":"Computer Engineering Project","content":null,"credits":2,"type":"Core","semester_id":3,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":"The objective of this course is to let the students work with limited guidance on a project designed to consolidate theory and practice, and inculcate an attitude of self-learning and team work","time_allocation":{"lecture":5,"tutorial":null,"practical":null,"design":null,"assignment":50,"independent_learning":null},"marks_allocation":{"practicals":null,"quizzes":null,"assignments":null,"tutorials":null,"projects":100,"participation":null,"mid_exam":null,"end_exam":null},"ilos":{"general":[],"knowledge":["At the end of this course, a student will be able to;\nConstruct relatively complex software solutions for real world problem using the knowledge they gained during their specialization (in particular CO225 and CO226)."],"skills":["At the end of this course, a student will be able to;\nModel a real-world problem using suitable techniques.\nBreak a project into manageable tasks.\nUse appropriate programming techniques, tools for the task at hand.\nWork effectively as a team and manage time to meet deadlines.\nCollect and analyze project outcomes.\nWrite technical report."],"attitudes":["Able to work independently on a project.\nHave the confidence to undertake a nontrivial project.\nSelf-directed learning of skills required for a project."]},"references":["Damith C. Rajapakse, Practical tips for software intensive student projects"],"modules":[],"prerequisites":[],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO227","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/15"},"created_at":"2025-04-15T09:58:13.000000Z","updated_at":"2025-04-15T09:58:13.000000Z"},{"id":16,"code":"CO321","name":"Embedded Systems","content":null,"credits":3,"type":"Core","semester_id":4,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":31,"practical":20,"tutorial":null},"marks_allocation":{"assignments":null,"end_exam":40,"mid_exam":20,"participation":null,"practicals":20,"projects":20,"quizzes":null,"tutorials":null},"ilos":{"attitudes":[],"general":[],"knowledge":[],"skills":[]},"references":["Book - AVR Microcontroller and Embedded Systems\nFredrick M. Cady; Microcontrollers and Microcomputers- Principles of Software and Hardware Engineering.\nMano, M.M. & Kime, C.R.; Logic and Computer Design Fundamentals\n"],"modules":[{"topic":"Introduction to microcontrollers","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Memory organization of microcontrollers","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Programming of flash microcontrollers","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"I\/O port configuration and programming interfaces","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"A\/D converters and applications","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Timer systems of microcontrollers","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Applications of non-volatile memory","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Industrial Applications","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"topic":"Student Project","description":"","time_allocation":{"assignment":null,"design":null,"independent_learning":null,"lecture":null,"practical":null,"tutorial":null},"created_at":"2025-07-26T08:00:49.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"}],"prerequisites":[{"id":9,"code":"CO224","name":"Computer Architecture","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO224","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/9"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO321","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/16"},"created_at":"2025-04-20T09:23:05.000000Z","updated_at":"2025-07-26T08:00:49.000000Z"},{"id":17,"code":" CO322","name":"Data Structures and Algorithms","content":null,"credits":3,"type":"Core","semester_id":4,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":30,"tutorial":null,"practical":18,"design":null,"assignment":12,"independent_learning":null},"marks_allocation":{"practicals":20,"quizzes":null,"assignments":20,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":40},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Cormen, Rivest, Introduction to Algorithms\nAho, Hopcroft and Ullman, Data structures and algorithms\nSedgewick and Wayne, Algorithms\nCO322 Syllabus; https:\/\/drive.google.com\/open?id=195_ITaRnKvyU_tFimv8xo4gH-gwonesi\n"],"modules":[],"prerequisites":[{"id":10,"code":"CO225","name":"Software Construction","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO225","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/10"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/+CO322","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/17"},"created_at":"2025-04-20T09:25:26.000000Z","updated_at":"2025-04-20T09:25:26.000000Z"},{"id":18,"code":"CO323","name":"Computer Communication Networks II","content":null,"credits":3,"type":"Core","semester_id":4,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":null,"tutorial":null,"practical":null,"design":null,"assignment":null,"independent_learning":null},"marks_allocation":{"practicals":20,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":50},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["J. F. Kurose and K. W. Ross. Computer Networking; A Top Down Approach. 6th edition.\nL. Garcia and I. Widjaja, Communication Networks; Fundamental Concepts and Key Architectures. 2nd edition."],"modules":[],"prerequisites":[{"id":4,"code":"CO223","name":"Computer Communication Networks 1","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO223","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/4"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO323","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/18"},"created_at":"2025-04-20T09:27:05.000000Z","updated_at":"2025-04-20T09:27:05.000000Z"},{"id":19,"code":"CO324","name":"Network and Web Application Design","content":null,"credits":3,"type":"Core","semester_id":4,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":26,"tutorial":4,"practical":16,"design":null,"assignment":14,"independent_learning":null},"marks_allocation":{"practicals":30,"quizzes":null,"assignments":30,"tutorials":null,"projects":null,"participation":null,"mid_exam":null,"end_exam":40},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["John Goerzen and Brandon Rhodes, Foundations of Python Network Programming\nJan Newmarch, Network programming with Go (http:\/\/jan.newmarch.name\/go\/)\n\n"],"modules":[],"prerequisites":[{"id":4,"code":"CO223","name":"Computer Communication Networks 1","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO223","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/4"}},{"id":10,"code":"CO225","name":"Software Construction","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO225","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/10"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO324","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/19"},"created_at":"2025-04-20T09:28:42.000000Z","updated_at":"2025-04-20T09:28:42.000000Z"},{"id":20,"code":"CO325","name":"Computer and Network Security","content":null,"credits":3,"type":"Core","semester_id":4,"academic_program":{"category":"undergraduate","version":1,"curriculum_name":"Current Curriculum"},"teaching_methods":null,"objectives":null,"time_allocation":{"lecture":30,"tutorial":5,"practical":10,"design":null,"assignment":10,"independent_learning":null},"marks_allocation":{"practicals":10,"quizzes":null,"assignments":10,"tutorials":null,"projects":null,"participation":null,"mid_exam":20,"end_exam":60},"ilos":{"general":[],"knowledge":[],"skills":[],"attitudes":[]},"references":["Ross Anderson, Security Engineering\nBehrouz Forouzan, Cryptography & Network Security"],"modules":[],"prerequisites":[{"id":4,"code":"CO223","name":"Computer Communication Networks 1","urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO223","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/4"}}],"urls":{"view":"https:\/\/www.ce.pdn.ac.lk\/courses\/undergraduate\/CO325","edit":"https:\/\/portal.ce.pdn.ac.lk\/dashboard\/courses\/edit\/20"},"created_at":"2025-04-20T09:30:20.000000Z","updated_at":"2025-04-20T09:30:20.000000Z"}],"links":{"first":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=1","last":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=4","prev":null,"next":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=2"},"meta":{"current_page":1,"from":1,"last_page":4,"links":[{"url":null,"label":"&laquo; Previous","active":false},{"url":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=1","label":"1","active":true},{"url":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=2","label":"2","active":false},{"url":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=3","label":"3","active":false},{"url":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=4","label":"4","active":false},{"url":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses?page=2","label":"Next &raquo;","active":false}],"path":"https:\/\/portal.ce.pdn.ac.lk\/api\/academic\/v1\/undergraduate\/courses","per_page":20,"to":20,"total":72}}